همانطور که در مطلب "NHibernate 3.0 و عدم وابستگی مستقیم به Log4Net" عنوان شد، از اینترفیس جدید IInternalLogger آن میتوان جهت ثبت وقایع داخلی NHibernate استفاده کرد. اگر در این بین صرفا بخواهیم SQL های تولیدی را لاگ کنیم، خلاصهی آن به صورت زیر خواهد بود:public class LoggerFactory : ILoggerFactory{ public IInternalLogger LoggerFor(System.Type type) { if (type == typeof(NHibernate.Tool.hbm2ddl.SchemaExport)) //log it } pub ...
ORM های NHibernate و Entity framework روشهای متفاوتی را برای به روز رسانی کلید خارجی با حداقل رفت و برگشت به دیتابیس ارائه میدهند که در ادامه معرفی خواهند شد.صورت مساله:فرض کنید میخواهیم برنامهای را بنویسیم که ریز پرداختهای روزانهی ما را ثبت کند. برای اینکار حداقل به یک جدول گروههای اقلام خریداری شده، یک جدول حسابهای تامین کنندهی مخارج، یک جدول فروشندهها و نهایتا یک جدول صورتحسابهای پرداختی بر اساس جداول ذکر شده نیاز خواهد بود.ا ...
SQL Server CE برای اولین بار جهت استفاده در SmartPhones طراحی شد؛ جزو خانوادهی Embedded databases قرار میگیرد و این مزایا را دارد:- نیازی به نصب ندارد و از چند DLL تشکیل شده است (برای مثال جهت استفاده در کارهای تک کاربرهی قابل حمل ایدهآل است).- رایگان است (جهت استفاده در کارهای تجاری و غیرتجاری).- حجم کمی دارد (جمعا کمتر از دو مگابایت).- پروایدر ADO.NET آن موجود است (توسط فضای نام System.Data.SqlServerCe که به کمک اسمبلی System.Data.Sq ...
احتمالا مطلب "دات نت 4 و کلاس Lazy" را پیشتر مطالعه کردهاید. هر چند NHibernate 3.0 بر اساس دات نت فریم ورک 3 و نیم تهیه شده، اما شبیه به این مفهوم را در مورد بارگذاری به تاخیر افتادهی مقادیر خواص یک کلاس که به ندرت مورد استفاده قرار میگیرند، پیاده سازی کرده است. Lazy را در اینجا تنبل، به تعویق افتاده، با تاخیر و شبیه به آن میتوان ترجمه کرد؛ خواص معوقه!برای مثال فرض کنید یکی از خواص کلاس مورد استفاده، متن، تصویر یا فایلی حجیم است. در مک ...
اولین موردی که پس از دریافت NHibernate 3.0 ممکن است به چشم بخورد، نبود اسمبلی Log4Net است. مطابق درخواستهای کاربران، ارجاع مستقیم به این کتابخانه حذف شده و با یک اینترفیس عمومی به نام IInternalLogger جایگزین گشته است (قرار گرفته در فضای نام NHibernate.Logging). به این صورت میتوان از انواع و اقسام کتابخانههای ثبت وقایع نوشته شده برای دات نت استفاده کرد؛ مانند: log4net، Nlog، EntLib Logging و غیره.البته لازم به ذکر است که همان روش قبلی ...
ICriteria API در NHibernate پیاده سازی الگوی Query Object است. مشکلی هم که این روش دارد استفاده از رشتهها جهت ایجاد کوئریهای متفاوت است؛ به عبارتی Type safe نیست. ایرادی هم به آن وارد نیست چون پیاده سازی اولیه آن از جاوا صورت گرفته و مباحث Lambda Expressions و Extension Methods هنوز در آن زبان به صورت رسمی ارائه نشده است (در JDK 7 تحت عنوان Closures قرار است اضافه شود). NHibernate 3.0 از ویژگیهای جدید زبانهای دات نتی جهت ارائهی محصور ...
چند وقت پیش کلا feeds.feedburner.com به همراه هزاران هزار زیر دامنهی آن فیلتر شدند؛ از دیروز هم feedproxy.google.com فیلتر شده و هزاران هزار زیر دامنهی آن دیگر به سادگی در دسترس نیستند. مورد اول را کسی زیاد جدی نگرفت چون لینک و راه حل سادهی دومی هم دارد، اما این مورد اخیر استفاده از گوگل ریدر را با مشکل مواجه کرده. در هر حال دلخوشی و مهمترین منابع مطالعاتی ما هم همین چیزها است ...
تصویر فوق، یکی از تصویرهایی است که شاید از طریق ایمیلهایی تحت عنوان "فقط در ایران!" به دست شما هم رسیده باشد. تصور کاربر نهایی (که این ایمیل را با تعجب ارسال کرده) این است که در اینجا به او گفته شده مثلا "مرتضی" را جستجو نکنید و امثال آن. چون برای او تفاوتی بین ی و ى وجود ندارد. همچنین بکار بردن "اقلامی" هم کمی غلط انداز است و بیشتر ذهن را به سمت کلمه سوق میدهد تا حرف.در ادامهی بحث آلرژی مزمن به وجود انواع "ی" و "ک" در بانک اطلاعاتی (+ ...
اگر به برنامههای جدید نوشته شده برای ویندوز 7 دقت کنیم، از یک سری امکانات مخصوص آن جهت بهبود دسترسی پذیری به قابلیتهایی که ارائه میدهند، استفاده شده است. برای مثال برنامهی OneNote مجموعهی آفیس را در نظر بگیرید. اگر بر روی آیکون آن در نوار وظیفهی ویندوز کلیک راست کنیم، لیست آخرین فایلهای گشوده شده توسط آن مشخص است و با کلیک بر روی هر کدام، به سادگی میتوان این فایل را گشود. یک چنین قابلیتی در منوی آغازین ویندوز نیز تعبیه شده است (شکل ...
پشتیبانی از دات نت فریم ورکهای سه و سه و نیم دقیقا در تاریخ "سهشنبه 23 فروردین 1390" پایان خواهد یافت. توصیه مایکروسافت ارتقاء برنامههای موجود به دات نت فریم ورک سه و نیم، سرویس پک یک و یا دات نت 4 است. طول عمر دات نت فریم ورک سه و نیم، سرویس پک یک به صورت Component محاسبه میشود؛ به این معنا که اگر دقت کرده باشید این نگارش به صورت پیش فرض جزئی از ویندوز 7 یا ویندوز سرور 2008 است. بنابراین تا زمانیکه این دو سیستم عامل توسط مایکروسافت پش ...