بایگانی برچسب: NHibernate

پیغام خطای کشنده

بعضی پیغام خطاها آنقدر سمج هستند و آن قدر منبع نامعلومی دارند که می‌توان به آنها لقب لعنتی، کشنده یا حتی دهن صاف کن داد. به تازگی یکی از این پیغام خطاهای کشنده برای من اتفاق افتاد. زمانی که در حال فعال‌سازی Caching سطح دوم برای یک برنامه‌ی مبتنی بر Castle ActiveRecord بودم دچار خطای …

‫تفاوت Load و Get در NHibernate

برای فراخوانی رکوردها از دیتابیس (بر اساس primary key) به حافظه دو راه در NHibernate وجود دارد. یکی Get و دیگری Load. متود Get برای دستیابی به رکورد مربوطه مستقیماً به cache یا database مراجعه می‌کند در حالی که متود Load تا زمانی که کسی propertyی غیر از id را فراخوانی نکرده به دیتابیس مراجعه …

‫کتاب‌های NHibernate

یکی از بزرگترین مشکلات موجود بر سر راه هر فناوری یا ابزاری کمبود منابع یادگیری علی‌الخصوص کتاب در مورد آن است. خوشبختانه این محدودیت‌ها رفته رفته در مورد NHibernate رفع گردیده و علاوه بر وبلاگ‌ها و انجمن‌های پرسش و پاسخ، چند کتاب و منبع مفید هم در مورد آن منتشر شده. در ادامه مروری داریم …

‫‫روز NHibernate

همیشه برای جلب توجه افراد به یک موضوع خاص، یک روز در سال به نام آن موضوع نام گذاری شده و در آن روز گردهمایی، کنفرانس، جشن یا… برگزار می‌شود. مثل روز جهانی دیابت، روز جهانی کودک، روز آزادی نرم‌افزار و… ظاهراً چنین روزی هم برای NHibernate در نظر گرفته و مراسم اولین دوره آن …

‫Paging کوئری‌های SQL در NHibernate

تصور کنید تعدادی کوئری SQL دارید که می‌خواهید Paging را با استفاده از NHibernate در آنها فعال کرده و بنا به دلایلی اجازه بازنویسی آنها با دیگر APIهای NHibernate نداشته و آنها را صرفاً باید از طریق ObjectDataSaource به کنترل‌های ASP.NET بخورانید. سه راه برای انجام این کار وجود دارد. راه اول: استفاده از stored …

‫استفاده مستقیم از SQL در NHibernate

NHibernate یک ORM است که شما را ترغیب می‌کند برای دسترسی به دیتابیس از APIهای خاص خودش یعنی HQL، ICriteria و Linq-to-NHibernate استفاده کنید. اما راه را برای آنها که به هر دلیل ترجیح می‌دهند یا مجبورند از SQL استفاده کنند نبسته است. NHibernate دو راه برای انجام این کار دارد: استفاده از ISession.CreateSQLQuery و …

SchemaUpdate generates duplicate foreign keys

We have a typical web application that its data access layer is written using Castle ActiveRecord. Castle ActiveRecord exposes NHibernate’s SchemUpdate feature. This feature lets us to upgrade schema/database with current changes in domain entities. One odd problem with SchemaUpdate was that in many cases it was generating foreign keys again without any change in …

Update Schema in Castle ActiveRecord

NHibernate has a feature named “Schema Update”. This feature help updating schema of existing database based on new changes in mapping files. Schema update do not change current data, just changes schema (table, view, … structure) in an additive manner. Castle ActiveRecord exposes this feature too. The problem is with NHibernate you have choice for …