نمایش نتایج 1 تا 2 از 2

نام تاپیک: 11 ویژگی Entity Framework 7 که باید بدانید

  1. #1

    11 ویژگی Entity Framework 7 که باید بدانید

    این مقاله، 11 ویژگی مهم 7 Entity Framework را بررسی می کند.

    کم حجم و قابل گسترش

    به جای استفاده از API های موجود برای Entity Framework 6، تیم توسعه آن تصمیم به ساخت این تکنولوژی از صفر گرفت. شما می توانید فقط افزونه هایی را که برای پروژه شما مفید می باشد، استفاده نمایید. الگو و مفهوم استفاده از Entity Framework به همان صورت باقی مانده است. شما می توانید به همان شکل قبل از DbContext/DbSet استفاده نمایید. مزیت قابل گسترش آن این است که می توانید آن را جایگزین کرده و توسعه دهید.
    پلت فرم های جدید

    Entity Framework در حال حاضر ORM بسیار محبوبی است که شامل اپلیکیشن هایی است که با تکنولوژی های WPF، WinForm و ASP.Net ایجاد شده اند. مایکروسافت با نگاهی به آینده تصمیم به پشتیبانی از پلت فرم های دیگری که در توسعه .Net رایج می باشد، گرفت. این پلت فرم ها شامل Windows Store، Windows Phone و Cloud Optimized .Net می باشد.
    Data Storeهای جدید

    Entity Framework به طور کاملا واضحی با data store های رابطه ای گره خورده است. حال در نسخه جدید EF پشتیبانی بسیار قابل قبولی از data storeهای غیر رابطه ای را فراهم آورده است. رابطه ای و غیر رابطه ای مانند ذخیره سازی جدول های Azure.
    تولید کوئری بهینه

    براساس درخواست های بسیار مردم در EF uservoice برای “بهبود تولید SQL”، Diego Vega (مدیر مهندسی، Entity Framework) پاسخ مثبتی به مردم برای شروع کار روی این ویژگی را داد. در نسخه بعدی یا انتشار نهایی، آن ها این ویژگی را اضافه می کنند. EF 7 بسیار ساده تر از EF 6 کوئری های SQL را تولید می نماید.
    فقط روش code first

    بالاخره تیم مایکروسافت در Entity Framework 7، EDMX را منسوخ کردند. در این باره می توانید مقاله EF7 – فقط code first یعنی چه نوشته Rowan Miller را بخوانید. اگر شما هنوز edmx را دوست دارید، می توانید مقاله – با رسیدن EF7، EDMX چه می شود؟-
    آپدیت Batch

    دیگر نیازی به به روزرسانی EF Batch برای انجام عملیات batch وجود ندارد چرا که EF7 به طور از پیش تعریف شده آن را پشتیبانی می کند. EF7 دیگر برای هر یک از دستورات insert/update/delete یک دستور جداگانه ارسال نمی کند. EF7 چندین دستور را در یک batch به یکباره به دیتابیس ارسال می کند.
    محدودیت های یکتایی

    EF7 این امکان را به شما می دهد که کلید های یکتای دیگری علاوه بر کلید اصلی در موجودیت های خود مشخص نمایید. به این ترتیب می توانید این کلیدهای جایگزین را به عنوان کلید هدف در رابطه های کلید خارجی استفاده نمایید. محدودیت یکتایی برای هر یک از کلیدهای جایگزین در model معرفی می شود.
    ظاهر آن به چه شکل است

    در مجموع، ایندکس و محدودیتی که برای کلید جایگزین معرفی شده اند به این صورت می باشد: AK_<type name>_<property name> می باشد. برای کلیدهای جایگزین ترکیبی، <property name> با یک underline و لیستی از property name ها می آید.
    چگونه از آن استفاده کنیم
    باید از یک fluent API استفاده کنید چرا که محدودیت یکتایی با استفاده از Data annotations قابل تنظیم نمی باشد.






    class MyContext: DbContext
    {
    public DbSet < Employee > Employees
    {
    get;
    set;
    }

    protected override void OnModelCreating(ModelBuilder modelBuilder)
    {
    modelBuilder.Entity < Employee > ()
    .HasAlternateKey(e => e.EmployeeCode)
    .HasName("AlteranteKey_EmployeeCode");
    }
    }

    class Employee
    {
    [Key]
    public int EmployeeId
    {
    get;
    set;
    }
    public string Name
    {
    get;
    set;
    }
    public string EmployeeCode
    {
    get;
    set;
    }
    public DateTime DateOfBirth
    {
    get;
    set;
    }
    }

    In-memory provider (برای تست)

    برای تست عملیات DB در Entity Framework، ما باید DbContext را مدل سازی نماییم که این کار آسانی نیست. ذخیره In-memory برای تست DbContext بدون مدل سازی آن مفید می باشد. ذخیره In-memory کاملا شبیه data store واقعی رفتار می کند. می توانید همان عملیات را به عنوان In-memory provider اجرا نمایید.
    Logging

    تمامی تعاملات با دیتابیس با استفاده از ویژگی از پیش تعریف شده logging در EF7 نظارت می شود. ویژگی logging توسط Microsoft.Framework.Logging ارائه شده و مایکروسافت ILoginFactory را پیاده سازی کرده که تمامی پلت فرم های .Net را پشتیبانی می کند(البته امیدواریم که همین طور باشد).
    Shadow Properties

    ویژگی هایی هستند که در کلاس entity وجود ندارند، اما به عنوان بخشی از آن رفتار می کنند. مقدار و وضعیت این ویژگی ها به طور کامل در Change Tracker نگه داری می شوند. این property ها می توانند در تمام عملیات های دیتابیس شرکت کنند، اما نباید از طریق کلاس entity در معرض دید مابقی اپلیکیشن قرار بگیرند. در حال حاضر، شما تنها از طریق fluent API می توانید به shadow properties دسترسی پیدا کنید.

  2. #2

    نقل قول: 11 ویژگی Entity Framework 7 که باید بدانید

    منبع : http://mspsoft.com/

تاپیک های مشابه

  1. پاسخ: 0
    آخرین پست: جمعه 19 آبان 1391, 23:57 عصر
  2. سوال: مشکل sort و filter نشدن بایندینگ سورسی که به entity framework وصله
    نوشته شده توسط arman1371 در بخش C#‎‎
    پاسخ: 9
    آخرین پست: چهارشنبه 08 شهریور 1391, 14:53 عصر
  3. آموزش: 25 قابلیت، نکته و تکنیکی که باید در مورد HTML5 بدانید.
    نوشته شده توسط mehdi.mousavi در بخش طراحی وب (Web Design)
    پاسخ: 0
    آخرین پست: سه شنبه 12 مرداد 1389, 00:55 صبح
  4. آموزش: پنج PHP Framework ای که باید از آنها مطلع باشید.
    نوشته شده توسط mehdi.mousavi در بخش PHP
    پاسخ: 1
    آخرین پست: جمعه 11 تیر 1389, 15:06 عصر

برچسب های این تاپیک

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •