اشتراک‌ها
سری بررسی پشت صحنه‌ی دات نت

In this series I answer various .NET questions. Some of them are asked during interviews, some of them I see on the internet, some of them are completely made up. The goal is to provide short answer with links to references if needed. This is by no means a .NET tutorial or experts reference, this is just a bunch of useful answers to refresh your knowledge. 

سری بررسی پشت صحنه‌ی دات نت
نظرات مطالب
بازنویسی سطح دوم کش برای Entity framework 6
Include باید قبل از Cacheable و حتی قبل از FindAll شما فراخوانی شود. باید پس از ارجاعی به dbSet فراخوانی شود، تا EF بتواند چرخش کاری صحیح آن‌را تشکیل دهد. برای بار دوم فراخوانی، پس از Cacheable، شما یک لیست ساده‌ی LINQ to Objects را خواهید داشت که از Context منقطع است و صرفا از کش خوانده شده‌است. بنابراین فراخوانی متد Include بر روی آن مفهومی ندارد.
نظرات مطالب
EF Code First #1
تمام ORMهای دات نتی در سطح پایین خودشون از ADO.NET استفاده می‌کنند. بنابراین پشت صحنه این‌ها، استفاده از Data Reader و امثال آن است، به همراه یک سری مزیت جانبی دیگر مانند: «5 دلیل برای استفاده از یک ابزار ORM» و جلوگیری از اختراع چرخ‌هایی به شدت ناقص و معیوب مانند: «مروری بر کدهای کلاس SqlHelper» و همچنین امنیت توکار و پیش فرض لحاظ شده در آن‌ها مانند: «امنیت در LINQ to SQL»
نظرات مطالب
مدیریت Instance در WCF
می تونید از کتاب 348 صفحه ای WCF 4.0 Multi-tier Services Development with LINQ to Entities  نوشته
Mike Liu  استفاده کنید.
خیلی روان و سلیس  برای سطوح مبتدی و متوسط نوشته شده.
کتاب Pro WCF 4 Practical Microsoft SOA Implementation  هم گزینه‌ی خیلی مناسبیه.
البته MSDN رو هم فراموش نکنید.
نظرات مطالب
متدهای کمکی مفید در پروژه های asp.net mvc
خطای زیر را میدهد:
LINQ to Entities does not recognize the method 'Persia.SolarDate ConvertToPersian(System.DateTime)' method, and this method cannot be translated into a store expression.  
برای ساخت مدل
من اول به روش دیتابیس فرست  EDMX را ساختم و سپس از ADO.NET DbContext Generator  استفاده کردم.

نظرات مطالب
خلاصه اشتراک‌های روز پنج شنبه 3 آذر 1390
مهم‌ترین مشکل کار با مایکروسافت این است که امروز عاشق است و فردا فارغ. امروز LINQ to SQL خوبه، فردا میاد می‌گه: چی؟! بریزیدش دور! EF خوبه! پس فردا همین بلا رو هم سر EF‌ میاره. کمی صبر داشته باشید. به دو سال نمیرسه. اینجا است که کسانی که می‌گن مثلا منحنی آموزشی NH کمی شیب تندی دارد ضرر خواهند کرد. چون طول عمر NH وابسته به رای بسته یک سازمان نیست. یادگیری آن هم چیزی نیست که امروز مفید باشد، فردا منسوخ شود و بدون استفاده.
نظرات مطالب
مقدار دهی کلیدهای خارجی در NHibernate و Entity framework
سلام،

من هم این روزها خیلی درگیر این مسئله با NH هستم. تا حالا دو تا راه پیدا کردم. یکی استفاده از HQL برای update کردن و دیگری استفاده از خاصیت Future برای کاهش رفت و آمدها به دیتابیس. البته تا حالا از هیچ کدام اونها به طور عملی استفاده نکنم. ولی با این راه حلی که شما گفتید تعداد راه حل‌ها سه تا می‌شود.

فقط مسئله کوچکی که می‌ماند این است که من عمدتاً از Castle ActiveRecord و Linq-to-NH استفاده می‌کنم و نمی‌دانم با نبود Load (به جای Get) در این حالت چه کار کنم.
نظرسنجی‌ها
از چه ORMایی برای انجام پروژه‌های مهم خود استفاده می‌کنید؟
Entity framework database-first
Entity framework model-first
Entity framework code-first
NHibernate
LLBLGen Pro
Telerik OpenAccess ORM
EntitySpaces
Devart
SubSonic
LINQ to SQL
از Micro ORMs مانند Dapper یا Massive
از یک ORM دست ساز خانگی
از ORM استفاده نمی‌کنم