نظرات مطالب
سفارشی سازی ASP.NET Core Identity - قسمت دوم - سرویس‌های پایه
- این پروژه برای سازگاری با آخرین نگارش موجود، بارها به روز رسانی شده. متن مطلب فوق را تغییر ندادم، ولی کدهای مخزن کد آن کاملا به روز هست.
- برای درک این مورد باید ساختار پروژه‌ی اصلی Identity را بررسی کنید. در یک طرف آن تعدادی کلاس سطح بالا و abstraction هست و در طرف دیگر پوشه‌ای به نام EntityFrameworkCore که پیاده سازی مخصوص EF-Core این abstraction‌ها است. هستند پروژه‌های دیگری که بجای EntityFrameworkCore از NHibernate و یا MongoDB استفاده کرده باشند.
نظرات مطالب
EF Code First #12
با سلام و عرض تشکر فراوان به خاطر مطلب مفید تون
سوالی که با خواندن این مطلب برای من پیش آمده اینه که فرض بگیرید بعد از مدتی شما تصمیم می‌گیرید ORM تون رو عوض کنید و تبدیل کنید به Nhibernate ولی شما چون در همه جا از جمله درUI  و   Application Service از IUnitOfWork استفاده کرده اید  چه طور می‌خواهید این کار را انجام دهید
با تشکر فراوان
نظرات مطالب
آشنایی با TransactionScope
برای اجرای تراکنش در سیستم‌های با کاربر و حجم داده زیاد بهتر ه از امکانات تراکنش موجود در ORM‌ها استفاده کنید. برای مثال در Entity Framework می‌تونید از DBTransaction‌ها استفاده کنید یا در NHibernate از تراکنش موجود در Session  استفاده کنید. برای مثال در CodeFirst
  public void Save( TEntity entity )
        {
            DbTransaction transaction = null;
            try
            {
                transaction = this.Database.Connection.BeginTransaction();
                //عملیات مورد نظر
                transaction.Commit();
            }
            catch
            {
                transaction.Rollback();
            }
            finally
            {
                transaction.Dispose();
            }          
        }
البته در زمان مناسب در صورت نیاز یک پست رو به این مورد اختصاص خواهم داد.


نظرات مطالب
EF Code First #10
در تمام ORMها استفاده میشه. NHibernate هم نوع خاص خودش را دارد. در EF از کلاس‌های پروکسی به دو منظور Lazy loading و change tracking استفاده میشه. به همین جهت خواصی که در lazy loading مورد استفاده قرار می‌گیرند باید virtual تعریف شوند. به این ترتیب ORM مورد استفاده می‌تونه این خواص رو جهت کاربردهای خودش، به صورت پویا بازنویسی و override کنه. با تنظیم DbContext.Configuration.ProxyCreationEnabled=false ، دو کاربرد یاد شده از کار خواهند افتاد. اطلاعات بیشتر رو می‌تونید در بلاگ یکی از اعضای تیم EF بخونید.
نظرات مطالب
آشنایی با NHibernate - قسمت هفتم
سیستم NHibernate از روز اول آن Code first بوده. EF هم در نگارش آخر آن به این نتیجه رسیده که روش Code first انعطاف پذیری بیشتری داره و دقیقا چیزی هست که برنامه نویس‌ها با آن راحت‌تر هستند.
البته برای NH یک سری ابزار تجاری توسط شرکت‌های ثالث درست شده که طراح دارد ولی ... فکر نمی‌کنم با استقبال مواجه شده باشد چون روش Code first یعنی رها شدن از انبوهی کد که توسط ابزارها نوشته می‌شن و عموما هم بهینه نیستند.
نظرات مطالب
EF Code First #11
یک دلیل مهم برای ایجاد یک Abstraction بر روی EF CodeFirst وجود دارد و آن هم استقلال از EF و IQueryable است. مثلاً ممکن است شما بخواهید بعداً به جای EF از NHibernate استفاده کنید. و یا ممکن است (حتماً) تکنولوژی جدیدتری بعد از EF وارد کار شود. از همه مهمتر ممکن است بخواهید از الگوی Adapter یا Decorator استفاده کنید. مثلاً یک Repository که اطلاعات یک جدول را به صورت Encrypt شده در بانک اطلاعات ذخیره می‌کند. و مثلاً به صفحه بندی سمت سرور هم نیاز دارید و حتی امکان استفاده از IQueryable هم وجود ندارند.
نظرات مطالب
ارتقاء به NHibernate 3.2
برای شروع کتابهای زیادی هست ولی من خودم بشخصه راهنمایی که جناب نصیری توی این وبلاگ گذاشتن رو بهترین شروع میدونم
در صورتیکه تمایل داشتید فایل پی دی اف این مجموعه تهیه شده که از لینک زیر میتونید دریافتش کنید، البته بعد از این فایل بنظرم فصل یازدهم کتاب NHibernate 3 Beginners Guide - Aug.2011 هم برای آشنایی با مشکلاتی که بطور معمول برنامه نویسان مرتکب میشن خیلی خوبه.
لینک: http://www.mediafire.com/?4a3ajd1t787ha6n
نظرات مطالب
NHibernate و مدیریت خودکار تغییرات ساختار بانک اطلاعاتی
در بیشتر شرکت هایی که به طریقی میخوان از بانک هم ورژن داشته باشند معمولا کنار هر پروژه یک پروژه از نوع بانک ساخته میشه (فقط MS SQL) ولی با این امکان NHibernate دیگه احتیاجی به نگهداری یک پروژه موازی نیست، همه تسک ها بصورت مجتمع و مدیریت شده در کلاسهای سطح سلوشن نگهداری میشه.
واقعا پست هاتون برای توسعه دهنده ها یه نوع واکسیناسیون میمونه ;)
نظرات مطالب
ارتقاء به NHibernate 3.2
ممنون.
بنظرتون همین تغییرات میتونه دلیل(بهونه) خوبی برای استفاده از EF باشه.
بنظرتون به ریسکش می ارزه که وقت بذاری و فردا روزی این روش هم ...
من سایت کارویس رو که دنبال میکنم زیاد آگهی که NHibernate کار; بخوان ندیدم.بنظرتون این دلیل استقبال کم(البته با استناد به فید های سایت کارویس) چی میتونه باشه؟
نظرات مطالب
مروری بر کدهای کلاس SqlHelper
مثلا طراحی Entity framework مایکروسافت به حدی ساده است که هر شخصی با داشتن بهره هوشی در حد یک عنکبوت آبی یا حتی جلبک دریایی هم می‌تونه با اون کار کنه! این جمله کاملا تایید میشه چون من یادش گرفتم و خیلی به این ORM ها علاقه مند شدم  کار انجام میدن در حد معجزه.
آقای نصیری آیا منبعی فارسی برای NHibernate  وجود داره؟