یک دست سازی ی و ک در برنامههای Entity framework 6
تا قبل از EF 6 برای طراحی یک سیستم عمومی تغییر مقادیر ثبت شده در بانک اطلاعاتی، میشد با استفاده از امکانات توکار Trackingآن، مقادیر تغییر کرده را یافت و برای مثال ی و ک آنها را پیش از درج در بانک...
View Articleصفحه بندی پویا در Entity Framework
در اکثر برنامهها ما نیازمند این موضوع هستیم که بتوانیم اطلاعاتی را به کاربر نشان دهیم. در بعضی از موارد این اطلاعات بسیار زیاد هستند و نیاز است در این حالت از صفحه بندی اطلاعات یا Data Paging استفاده...
View Articleمقاومت اتصال و اتصالات بهبودپذیر در Entity framework 6
Timeouts، Deadlocks و قطعیهای احتمالی و موقت اتصال به بانک اطلاعاتی در شبکه، جزئی از ساختار دنیای واقعی هستند. در EF 6 برای پیاده سازی سعی مجدد در اتصال و انجام مجدد عملیات، ویژگی خاصی تحت عنوان...
View ArticleRepository ها روی UnitOfWork ایده خوبی نیستند
در دنیای دات نت گرایشیبرای تجزیه (abstract) کردن EF پشت الگوی Repositoryوجود دارد. این تمایل اساسا بد است و در ادامه سعی میکنم چرای آن را توضیح دهم.پایه و اساس عموما این باور وجود دارد که با استفاده...
View Articleتنظیم رشته اتصالی Entity Framework به بانک اطلاعاتی به وسیله کد
در زمان ساخت مدل از بانک اطلاعاتی در روش Database First به صورت پیش فرض تنظیمات مربوط به اتصال (Connection String) مدل به بانک اطلاعاتی در فایل config برنامه ذخیره میشود. مشکل این روش آن است که در...
View ArticleSoft Delete در Entity Framework 6
برای حذف نمودن یک رکورد از دیتابیس 2 راه وجود دارد : 1- حذف به صورت فیزیکی 2- حذف به صورت منطقی ( مورد بحث این مطلب )در حذف رکورد به صورت منطقی، طراحان دیتابیس، فیلدی را با نامهای متفاوتی همچون Flag ,...
View Articleنگاهی به هویت سنجی کاربران در ASP.NET MVC 5
در مقاله پیش رو، سعی شدهاست به شکلی تقریبا عملی، کلیاتی در مورد Authentication در MVC5 توضیح داده شود. هدف روشن شدن ابهامات اولیه در هویت سنجی MVC5 و حل شدن مشکلات اولیه برای ایجاد یک پروژه است. در...
View Articleپردازشهای Async در Entity framework 6
اجرای Async اعمال نسبتا طولانی، در برنامههای مبتنی بر داده، عموما این مزایا را به همراه دارد: الف) مقیاس پذیری سمت سرور در اعمال سمت سرور متداول، تردهای متعددی جهت پردازش درخواستهای کلاینتها تدارک...
View Articleپردازش دادههای جغرافیایی به کمک SQL Server و Entity framework
پشتیبانی SQL Server از Spatial data از SQL Server 2008 به بعد، نوع داده جدیدی به نام geography به نوعهای قابل تعریف ستونها اضافه شدهاست. در این نوع ستونها میتوان طول و عرض جغرافیایی یک نقطه را...
View Articleبررسی خطاهای متداول عملیات Migration در حین به روز رسانی پروژههای EF Code...
1. شاید یکی از آزاردهندهترین مشکلات، برخورد با پیغامهای خطا، هنگام عملیات migrationباشد. یکی از دهها نوع خطا، زمانی رخ میدهد که متد seedدر حال اجراست. در این حالت هیچ نوع break-point ایی به کمک ما...
View Articleروشهایی برای بهبود سرعت برنامههای مبتنی بر Entity framework
در این مطلب تعدادی از شایعترین مشکلات حین کار با Entity framework که نهایتا به تولید برنامههایی کند منجر میشوند، بررسی خواهند شد. مدل مورد بررسی public class User { public int Id { get; set; }...
View Articleایجاد سرویس چندلایهی WCF با Entity Framework در قالب پروژه - 10
بهرهگیری از یک تابع پویا برای افزودن، ویرایشدر مثالهای گذشتهدیدید که برای هر کدام از عملهای درج، ویرایش و حذف، تابعهای مختلفی نوشته بودیم که اینکار هنگامیکه یک پروژهی بزرگ در دست داریم زمانبر...
View Articleبهبود عملکرد SQL Server Locks در سیستمهای با تعداد تراکنش بالا در Entity...
بر اساس رفتار پیش فرضدر دیتابیس SQL Server، در زمان انجام دادن یک دستور که منجر به ایجاد تغییرات در اطلاعات موجود در جدول میشود (برای مثال دستور Update)، جدول مربوطه به صورت کامل Lock میشود، ولو آن...
View Articleاستفاده از Full text search توسط Entity Framework
پیشنیاز مطلب:پشتیبانی از Full Text Search در SQL Server Full Text Search یا به اختصار FTS یکی از قابلیتهای SQL Server جهت جستجوی پیشرفته در متون میباشد. این قابلیت تا کنون در EF 6.1.1 ایجاد نشده است....
View Articleایجاد ایندکس منحصربفرد بر روی چند فیلد با هم در EF Code first
در EF 6 امکان تعریف سادهتر ایندکسها توسط data annotationsمیسر شدهاست. برای مثال:public abstract class BaseEntity { public int Id { get; set; } } public class User : BaseEntity { [Index(IsUnique =...
View Articleبه روز رسانی سادهتر اجزاء ارتباطات در EF Code first به کمک GraphDiff
دو نوع حالت کلی کارکردن با EF وجود دارند: متصل و منقطع. در حالت متصل مانند برنامههای متداول دسکتاپ، Context مورد استفاده در طول عمر صفحهی جاری زنده نگه داشته میشود. در این حالت اگر شیءایی اضافه شود،...
View Articleتنظیمات و نکات کاربردی کتابخانهی JSON.NET
پس از بررسی مقدماتیامکانات کتابخانهی JSON.NET، در ادامه به تعدادی از تنظیمات کاربردی آن با ذکر مثالهایی خواهیم پرداخت. گرفتن خروجی CamelCase از JSON.NET یک سری از کتابخانههای جاوا اسکریپتی سمت...
View Articleکدام سلسله متدها، متد جاری را فراخوانی کردهاند؟
یکی از نیازهای نوشتن یک برنامهی پروفایلر، نمایش اطلاعات متدهایی است که سبب لاگ شدن اطلاعاتی شدهاند. برای مثال در طراحی interceptorهای EF 6 به یک چنین متدهایی میرسیم: public void...
View Articleیافتن Contextهای Dispose نشده در Entity framework
این دو متد را در نظر بگیرید: private static void disposedContext() { using (var context = new MyContext()) { Debug.WriteLine("Posts count: " + context.BlogPosts.Count()); } } private static void...
View Articleفعالسازی Multiple Active Result Sets
(Multiple Active Result Sets (MARS یکی از قابلیتهای SQL SERVER است. این قابلیت در واقع این امکان را برای ما فراهم میکند تا بر روی یک Connection همزمان چندین کوئری را به صورت موازی ارسال کنیم. در این...
View Article