ההבדל בין Nhibernate ו Linq ההבדל בין

Anonim

Nhibernate לעומת Linq

LINQ

LINQ מייצג שאילתת שפה משולבת. ביסודו של דבר, LINQ מטפל במודל הנוכחי של פיתוח מסד הנתונים בהקשר של מודל תכנות מונחה עצמים. עם זאת, תמיכה מקיפה ב- LINQ זקוקה להרחבות מסוימות בשפה המשמשת מאז ש- Linq אינו כלי מיפוי יחסי אובייקט מלא (ORM). הרחבות כאלה מגבירות את התפוקה והיעילות, ובכך מספקות תחביר קצר יותר, משמעותי יותר ובעל אופי אקספרסיבי יותר לתפעול נתונים.

-> ->

LINQ הוא מודל תכנות המציג שאילתות כמושג מדרגה ראשונה לשפת Microsoft NET כלשהי. במילים אחרות, היא נחשבת כשפת שאילתות המשמשת בעיקר עם MS SQL Server. רבים מוצאים Linq שימושי למדי ביישומים קטנים שבהם הצורך במסד הנתונים אינו משמעותי.

NHIBERNATE

NHibernate הוא פתרון מיפוי מקושר לקישור פתוח או פתרון ORM עבור Microsoft. פלטפורמה. הוא פותח באופן דומה ל ספריית מצב שינה של ג 'אווה המספק שירותים להמשיך. NET אובייקטים מסגרת וממנה מסד הנתונים הבסיסית.

זה מכוון בעיקר למפתחים התמקדות בתחום במקום מסד נתונים. NHibernate ניתן ליישם עם כמעט כל מערכת ניהול DataBase (DBMS).

חלש, ללא intellisense, NHibernate יש שפת שאילתות מוגבלת. עם זאת, הוא גמיש למדי לגבי סוגי הגדרות אובייקט שניתן למפות למבני טבלה. NHibernate מציג אפשרויות נוספות, שכן ניתן לצבוט הרבה היבטים במונחים של גישה לנתונים. זה כמעט בלתי מוגבל.

סיכום:

1. עם Linq, מסד הנתונים כבר קיים והקשרים ותכנות מסוימים יהיו תלויים באופן הגדרת מסד הנתונים.

2. שלא כמו Linq, NHibernate הוא קוד פתוח.

3. Nhibernate הוא כלי ORM בעוד Linq הוא כלי שלם ORM כפי שהוא צריך הרחבות נוספות.

4. Linq היא בעיקר שפת שאילתות כאשר NHibernate יש שפת שאילתות מוגבלת.

5. Linq הוא הרבה יותר שימושי ביישומים קטנים שבהם אין תלות מסיבית על מסדי נתונים.

6. NHibernate הוא מאוד גמיש ומציג אפשרויות נוספות.