ارتقاء به NHibernate 3.2
اندازه‌ی قلم متن
تخمین مدت زمان مطالعه‌ی مطلب: یک دقیقه


شروع به کار با NH به دو قسمت تقسیم می‌شود. یک قسمت نگاشت کلا‌س‌ها است و قسمت دوم سشن گردانی آن. قسمت دوم آن به همان مباحث کلاس‌های singleton ایی که بحث آن‌ها در سایت هست بر می‌گردد. یا حتی استفاده از کتابخانه‌های IOC برای مدیریت آن (که این پیاده سازی را به صورت توکار هم دارند).
قسمت نگاشت کلاس‌ها در NH انواع و اقسامی دارد:
  • ابتدا همان فایل‌های XML مدل Hibernate جاوا بود.
  • بعد شد مدل annotation ایی به نام Castle ActiveRecord. (این پروژه آنچنان فعال نیست و علتش به این بر می‌گردد که نویسنده اصلی جذب مایکروسافت شده)
  • سپس Fluent NHibernate پدید آمد. (این پروژه هم پس از NH 3.2 ، سرد شده و به نظر آنچنان فعال نیست)
  • الان هم مدل جدیدی به صورت توکار و بدون نیاز به کتابخانه‌های جانبی از NH 3.2 به بعد به آن اضافه شده به نام mapping-by-code .
بنابراین روش مرجح از NH 3,2 به بعد، همین روش mapping-by-code توکار آن است. خصوصا اینکه نیاز به وابستگی خارجی ندارد. برای مثال به دلیل عدم فعال بودن پروژه‌هایی که نام برده شد، مثلا NH 3,3 امروز ارائه می‌شود، شاید دو ماه بعد، این کتابخانه‌های جانبی ساده سازی نگاشت‌ها، به روز شوند یا نشوند.

و ... خبر خوب اینکه شخصی در 18 قسمت به توضیح این قابلیت جدید mapping by code پرداخته و روش‌های نگاشت مرتبط رو با مثال توضیح داده که در آدرس زیر می‌تونید اون‌ها رو پیدا کنید:



  • #
    ‫۱۲ سال و ۸ ماه قبل، یکشنبه ۳۰ بهمن ۱۳۹۰، ساعت ۱۹:۲۳
    ممنون.
    بنظرتون همین تغییرات میتونه دلیل(بهونه) خوبی برای استفاده از EF باشه.
    بنظرتون به ریسکش می ارزه که وقت بذاری و فردا روزی این روش هم ...
    من سایت کارویس رو که دنبال میکنم زیاد آگهی که NHibernate کار; بخوان ندیدم.بنظرتون این دلیل استقبال کم(البته با استناد به فید های سایت کارویس) چی میتونه باشه؟
  • #
    ‫۱۲ سال و ۸ ماه قبل، یکشنبه ۳۰ بهمن ۱۳۹۰، ساعت ۱۹:۵۰
    - این بهونه چطوره: EF هم به سرنوشت LINQ to SQL در یک تا دو سال بعد مبتلا بشه. ولی این امر در مورد NH صادق نیست.
    - این روش چون جزو خود کتابخانه پایه شده و نویسنده اصلی آن هم خود مدیر پروژه NH است (فابیو مالو)، احتمال کنار گذاشته شدنش کم است.
  • #
    ‫۱۲ سال و ۸ ماه قبل، یکشنبه ۳۰ بهمن ۱۳۹۰، ساعت ۲۳:۵۰
    با نکته اول حرف آقای نصیری خیلی خیلی خیلی موافقم :)
    اینکه به قول دوست و استاد عزیزم جناب صاحب mapping-by-code فردا روزی حذف شه، خیلی فرق میکنه با اینکه EF فردا روزی کلا کنار گذاشته بشه! همونطور که L2S کنار گذاشته شد و وب-فرم ها دارن میشن. اگه mapping-by-code نبود، از xml استفاده میکنیم و اگه اون حذف شد از Fluent و اگه اون حذف شد از x و y و z. ولی مسلما nh کماکان زنده میمونه! چیزی که در مورد موضوعات میکروسافتی خیلی باید با تردید با قضیه مواجه شد.
    من پیشنهاد میکنم انرژی اصلی رو روی nh بذارید ولی از ef هم غافل نشید. اکثر پروژه های کد-باز بزرگ و معروف هم با nh نوشته شدن که خودش یه منبع عالی برای تمرین و تسلط هست. ولی تقریبا برای ef سمپل های ابتدایی و کوچیکی میشه فقط پیدا کرد. زنده باشین.
  • #
    ‫۱۲ سال و ۸ ماه قبل، دوشنبه ۱ اسفند ۱۳۹۰، ساعت ۱۲:۲۵
    با عرض سلام
    برای آموزش NHibenate  از کجا باید شروع کرد؟

    ممنون
  • #
    ‫۱۲ سال و ۸ ماه قبل، دوشنبه ۱ اسفند ۱۳۹۰، ساعت ۱۴:۱۱
    ممنون، lیه مشکلی توی برنامه BloggetToCHM  دیدم، زمانیکه این بلاگ رو آپدیت میکنم لینکهای داخلی فایل به صفحه هدایت نمیشه با اینکه خود صفحات رو میشه مستقیم از داخل فایل دید، باز هم ممنون
  • #
    ‫۱۲ سال و ۸ ماه قبل، دوشنبه ۱ اسفند ۱۳۹۰، ساعت ۱۴:۱۶
    برای شروع کتابهای زیادی هست ولی من خودم بشخصه راهنمایی که جناب نصیری توی این وبلاگ گذاشتن رو بهترین شروع میدونم
    در صورتیکه تمایل داشتید فایل پی دی اف این مجموعه تهیه شده که از لینک زیر میتونید دریافتش کنید، البته بعد از این فایل بنظرم فصل یازدهم کتاب NHibernate 3 Beginners Guide - Aug.2011 هم برای آشنایی با مشکلاتی که بطور معمول برنامه نویسان مرتکب میشن خیلی خوبه.
    لینک: http://www.mediafire.com/?4a3ajd1t787ha6n