In my Castle ActiveRecord based application I have a base class named ARSuperClass that all my domain entities except than EntityLogger inherit from it instead of inheriting from ActiveRecordBase. I have ModifyDate and CreateDate fields in ARSuperClass that must be updated each time an entity is created or updated. Additionally each creation/updating operations must be …
یکی از راههای توصیه شده برای افزایش Performance در Queryهای دیتابیس، پرهیز از استفادههای بیمورد از select * from some_table میباشد. راه حل توصیه شده استفاده از projection و برگرداندن صرفاً ستونهای مورد نیاز از دیتابیس است. مثلاً باید از select col1, col2 from some_table استفاده شود. در همین راستا LINQ-to-NHibernate هم پشتیبانی خوبی از …
Castle ActiveRecord یک کتابخانه مفید برای استفاده از NHibernate است. این کتابخانه هم کار mapping را مشابه Fluent NHibernate ساده میکند و هم کار مدیریت session و خیلی کارهای دیگر را خودش مدیریت میکند. به طوری که استفاده از NHibernate بسیار سادهتر شود. Castle ActiveRecord در واقع پیادهسازی Design Patternی به همین نام یعنی Active …
Second level cache is different than first level cache. It acts on session factory level not each individual session. In order to setup second level cache in a Castle ActiveRecord application consider following points: 1. Settings of second level cache in Castle ActiveRecord is basically as same as NHibernate. 2. In addition of web.config/app.config settings, …
اسفند هر سال وقتی که خانه تکانیها و گردگیریهای شروع میشود تعدادی وسایل اضافه و کم استفاده هم در منزل پیدا میشود. گاهی اوقات در کنار این وسایل، کامپیوترهای قدیمی و قطعات مازاد کامپیوتر مثل مانیتور یا دی وی دی درایو هم پیدا میشود. چه خوب است که هم زمان با پاکسازی منزل از این …
بعضی پیغام خطاها آنقدر سمج هستند و آن قدر منبع نامعلومی دارند که میتوان به آنها لقب لعنتی، کشنده یا حتی دهن صاف کن داد. به تازگی یکی از این پیغام خطاهای کشنده برای من اتفاق افتاد. زمانی که در حال فعالسازی Caching سطح دوم برای یک برنامهی مبتنی بر Castle ActiveRecord بودم دچار خطای …
یکی از عادتهای من در این وبلاگ نوشتن دربارهی کتابهایی است که خواندهام. یکی از کتابهایی که مدتها پیش خواندن آن را شروع کردم کتاب LINQ in Action است. این کتاب را برای تکمیل اطلاعاتم راجع به LINQ شروع کردم چون حس میکردم چیزهایی که راجع به LINQ از کتاب Pro C# 2008 and the …
While I was trying to use first level cache in a Castle ActiveRecord based application I found some points that like to share: 1. First level cache is alive within a single session (NHibernate’s ISession) only. 2. First level cache is enabled by default and can not be disabled. 3. If you don’t use SessionScope …
روزی که به عنوان یک دانشجوی نرمافزار وارد دانشگاه شدیم تصورمان این بود که به جز نرمافزار، برنامهنویسی و کامپیوتر چیزی نخواهیم دید. اما در عوض با سیلی از دروس مدار الکتریکی و الکترونیکی، ریاضی و فیزیک مواجه شدیم که عملاً باعث شد کلی از هدف اصلیمان باز بمانیم. دروس سیستم عامل و شبکه و …
برای فراخوانی رکوردها از دیتابیس (بر اساس primary key) به حافظه دو راه در NHibernate وجود دارد. یکی Get و دیگری Load. متود Get برای دستیابی به رکورد مربوطه مستقیماً به cache یا database مراجعه میکند در حالی که متود Load تا زمانی که کسی propertyی غیر از id را فراخوانی نکرده به دیتابیس مراجعه …