2021-01-29 18:29:08
کتابخانه DbContext مخصوص MongoDb (مشابه Entity Framework)
اگه قبلا با EF یا EF Core کار کردین و الان میخواین از MongoDb استفاده کنین یکی از راحت ترین گزینه ها کتابخانه MongoFramework هست
این کتابخونه یک رابط کاربری (Interface) مشابه Entity Framework رو در اختیارتون میذاره یعنی یه کلاس DbContext و یه سری متد مشابه EF در اختیارتون میذاره تا بتونین تجربه مشابهی رو باهاش داشته باشین، متنها با MongoDb
مثلا :
امکان داشتن DbContext و DbSet ها
وجود متد SaveChange و ترانزکشنال بودن اون
امکان استفاده از Attribute ها روی entity ها و property هاتون و مپ کردن اونها به دیتابیس mongo
امکان ایندکس گذاری توسط Attibute ها
وجود قابلیت Change Tracker مشابه EF
قابلیت partial update (بروزرسانی فقط فیلد های تغییر پیدا کرده)
نکته:
دقت داشته باشین که این کتابخونه یک پروایدر مخصوص EF Core نیست و روی اون قابل نصب کردن باشه؛ کلا یه کتابخونه جداست که فقط مشابه اون عمل میکنه
هرچند که این کتابخونه سعی کرده خودشو خیلی شبیه به EF Core کنه و امکانات اون رو تو خوش فراهم کنه ولی به دلیل تفاوت ساختار Sql و NoSql این کار به صورت 100% ایی قابل انجام نیست. پس این کتابخونه هم یه سری از امکانات EF Core (مخصوصا تو سطح پیشرفته، بسیاری از امکاناتش) رو نداره
این کتابخونه برای کار های ساده و مبتدی خوبه (مثلا برای کسانی که میخوان mongo بلد نیستن ولی میخوان یه استفاده حداقلی و البته راحت ازش داشته باشین خوبه)
ولی برای کار ها پیشرفته و پروژه های بزرگ قطعا پیشنهاد نمیکنم. در اون سطح بهترین روش استفاده از خود درایور سی شارپ mongodb هست.
ریپازیتوری گیتهاب پروژ به همراه آموزش:
https://github.com/TurnerSoftware/MongoFramework
60 views15:29