نظرات مطالب
معرفی کتاب: مرجع کامل ASP.NET MVC 4
باسلام
ضمن تشکر از بابت کتاب پرمحتوای asp.net mvc4  و همچنین entity framework
سوالی ازتون داشتم جناب بهروز راد
من آشنایی دارم با asp.net و sql server ولی زیاد حرفه ای نیستم البته مبتدی مبتدی هم نیستم
میخواستم ازتون بپرسم مطالعه این دوتا کتاب شما میتونه برام بصورت عملی نه تئوری مفید باشه؟البته تو انجمن آقای کرامتی فر هم توضیحاتی راجع به همین کتابهای شما رو خوندم میخوام تهیه کنم بنظرتون در سطحی هستم که بتونم از این کتابهای شما استفاده کنم؟
بسیار ممنون
موفق باشید 
نظرات مطالب
Identity و مباحث مربوط به آن (قسمت اول) - آشنایی با Identity
این موضوع بستگی به سناریو شما داره
اما معمولا در بیشتر مواقع Identity را به شکل Unique در نظر می‌گیرند ذکر این نکته هم ضروری است که 
1- در SQL Server معمولا Primary Key بوسیله یک Unique Clustered Index هندل می‌شود 
(هر چند می‌شود اون رو به صورت یک Unique Non Clustered Index در نظر گرفت)
2- Clustered Index ترتیب و چینش فیزیکی رکوردها را مشخص می‌کند یعنی اگر Identity به عنوان کلاستر ایندکس باشد
چینش و ترتیب فیزیکی رکوردها بر اساس Identity خواهد بود (سطح leaf Level مربوط به ایندکس که در کلاستر ایندکس همان Data Level است) 
نظرات مطالب
آشنایی با Window Function ها در SQL Server بخش چهارم
سلام
شما می‌توانید، با دستکاری Query‌ها خروجی‌های یکسانی را ایجاد نمایید، دو Query که ایجاد نمودید، خروجی یکسانی ندارند. Query دوم شما با خروجی Last_Value،مقاله یکسان است، اما باید بگویم که مفهوم Last_Value این است که آخرین سطر در یک گروه را بر می‌گرداند. بهتر است بخش اول را مطالعه نمایید.
علت یکسان نبودن نتیجه دو Query شما در نحوه Sort و مفهوم First_value و Last_Value می‌باشد:
نکنه: اگر در Over Clause شرط Order by را اعمال نماییم، اما از Row یا Range استفاده نکنیم، SQL Server بصورت پیش فرض از قالب زیر استفاده می‌نماید: 
RANGE UNBOUNDED PRECEDING AND CURRENT ROW

نظرات مطالب
EF Code First #9
آقای نصیری با سلام.
من 4 تا Entity دارم و یک Entity پایه. استراژی پباده سازی اون هم TPT است . جدول پایه حدود 100 فیلد دارد. موجودیت‌های فرزند هم هرکدام حدود 30 ستون دارند. وقتی با EF Code First داده‌ها را واکشی میکنم کوئری بسیار سنگین را در SQL Server Profiler ایجاد می‌شود  که وقتی آنرا در NotePad کپی میکنم چیزی حدود 60 کیلوبایت می‌شود. ضمناً به تمام ستون‌های جداول نیاز دارم تا آنها را در گرید نمایش دهم.
درصورت امکان راهنمایی کنید.heavyQuery.txt
نظرات مطالب
EF Code First #12
علت این است که یک SaveChanges در اینجا تعریف شده (ضمنا زمان اجرای این‌ها مهم نیست. بحث ما در مورد تعدد تراکنش‌ها بود). چند سطر زیر را اضافه کنید بعد از سطر آخر و مجددا تست کنید:
//...            
uow.SaveChanges();
//...            
var product3 = new Product { Name = "P300", Price = 300 };
var category2 = new Category
{
                Name = "Cat200",
                Title = "Title200",
                Products = new List<Product> { product3 }
};
categoryService.AddNewCategory(category2);
uow.SaveChanges();
من دو تراکنش مجزا رو در برنامه مطمئن و تست شده SQL Server Profiler مشاهده می‌کنم (به ازای هربار فراخوانی SaveChanges).

نظرات مطالب
آشنایی با Refactoring - قسمت 3
EF Code first هم برای معرفی فیلدهای محاسباتی ویژگی NotMapped را دارد. این فیلدها در بانک اطلاعاتی معادلی ندارند و صرفا جهت اعمال به UI، به کلاس اضافه می‌شن.
البته منطق آنچنانی ندارند و در حد calculated field در sql server به آن نگاه کنید. عموما جمع و ضرب روی فیلدها است یا تبدیل تاریخ و در این حد ساده است. بیشتر از این بود باید از کلاس مدل خارج شود و به لایه سرویس سپرده شود.
و یا روش بهتر تعریف آن‌ها انتقال این موارد به ViewModel است. مدل را باید از این نوع خواص خالی کرد. ViewModel بهتر است محل قرارگیری فیلدهای محاسباتی از این دست باشد که صرفا کاربرد سمت UI دارند و در بانک اطلاعاتی معادل متناظری ندارند.

نظرات مطالب
EF Code First #1
1 و 3 - در انتهای بحث عرض کردم در قسمت‌های بعدی خیلی از موارد رو توضیح خواهم داد. این قسمت اول و فقط یک «مقدمه» ابتدایی بود.
2 - EF با بانک‌های اطلاعاتی NoSQL کار نمی‌کند. ضمنا هستند بانک‌های اطلاعاتی NoSQL ایی که برای دات نت نوشته‌ شده‌اند و از همان روز اول با کلاس‌ها و LINQ کار می‌کنید مانند RavenDB . طراحی فوق ‌العاده‌ای داره (^).
استفاده از EF Code first با سایر بانک‌های اطلاعاتی بجز مشتقات SQL Server نیز میسر است. برای آن‌ها نیاز به پروایدر مخصوص وجود دارد؛ مثلا: (^)