‫۷ سال و ۱۰ ماه قبل، یکشنبه ۲۳ آبان ۱۳۹۵، ساعت ۱۷:۳۴
با سلام مجدد 
من هنوز مشکل در سفارشی سازی ویوهای این پروژه رو دارم با این مقاله
و نکته زیر 
-اگر تغییری در فایل‌های View، در تعداد و نام آن‌ها صورت گرفت، روی فایل T4MVC.tt کلیک راست کرده و گزینه‌ی اجرای آن‌را انتخاب کنید. پس از این‌کار، مجددا کامپایل پروژه را فراموش نکنید. 
وقتی راست روی T4MVC.tt راست کلیک و run custom tool را می‌زنم اخطار زیر را دریافت می‌کنم 
[Security Warning]
 
Running this text template can potentially harm your computer. Do not run it if you
obtain if rtom an untrusted source.
 
Click OK. to run the template.
Click Cancel top stop the process.
 
[X] Do not show this message again
 
[OK]  [Cancel]
و با زدن ok کلی خطا میده . لطفا راهنمایی بفرمایید.
‫۷ سال و ۱۰ ماه قبل، دوشنبه ۱۷ آبان ۱۳۹۵، ساعت ۱۹:۰۵
ممنون بابت پاسخ. متوجه شدم که این فایل مربوط به اعتبارسنجی.سوالم این چرا وقتی خود mvc اعتبارسنجی داره (jquery.validate.unobtrusive.js  , jquery.validate.js   )  و فایل jquery.unobtrusive-ajax.js چرا شما از اون فایل استفاده کردید؟
سوال بعدی: اگه اون فایل jqueryval.default  رو بردارید اعتبارسنجی سمت سرور کار میکند یا ن ؟
‫۷ سال و ۱۰ ماه قبل، یکشنبه ۱۶ آبان ۱۳۹۵، ساعت ۱۵:۲۱
اگر محتوای فایل را بررسی کرده باشد، متوجه میشوید که از validator مربوط به جی کوئری استفاده شده است، لذا لازم است فایل jquery.validate نیز لود شود. از طرفی در همه صفحات نیازی به validation نبوده است. به همین دلیل در Layout رفرنس داده نشده است.
‫۷ سال و ۱۰ ماه قبل، سه‌شنبه ۱۱ آبان ۱۳۹۵، ساعت ۰۰:۳۷
آقا خیلی ممنون از لینکهایی که دادین .
خلاصه کاری که برای اضافه کردن کلاس جدید مدل لازم بود:
1- کامنت کردن خط زیر
 //Database.SetInitializer<ApplicationDbContext>(null);
و فعال کردن کد زیر بجای بالایی
            Database.SetInitializer(new MigrateDatabaseToLatestVersion<ApplicationDbContext, DataLayer.Migrations.Configuration>());
2- فایل کانفیگ بهمان شکل اول باقی می‌ماند یعنی
public Configuration()
        {         
            AutomaticMigrationsEnabled = false;
            AutomaticMigrationDataLossAllowed = false;           
        }   
3- تغییرات لازم روی مدلها و یا اضافه کردن کلاسهای POCO جدید به همراه کانفیگشان انجام شود
4- با فرمان زیر فایل migration جدید برای تغییراتمان ایجاد می‌کنیم
add-migrations firstchange
5- و با فرمان Update-Database -Verbose  تغییرات روی بانک اعمال می‌شود
‫۷ سال و ۱۱ ماه قبل، چهارشنبه ۱۴ مهر ۱۳۹۵، ساعت ۰۲:۱۶
مقاله «بررسی نحوه‌ی راه اندازی پروژه‌ی Decision» به شما دید می‌ده که بانک اطلاعاتی اون چطور درست یا به روز میشه. مطلب « خودکار کردن تعاریف DbSetها در EF Code first» رو هم مطالعه کنید. ضمنا مباحث Migrations رو هم باید بخونید: Entity framework code-first  
‫۷ سال و ۱۱ ماه قبل، چهارشنبه ۱۴ مهر ۱۳۹۵، ساعت ۰۱:۴۵
سلام 
من تمام نظرات این پروژه رو مرور کردم ولی بازم نحوه اضافه کردن کلاسهای خودم رو به این پروژه متوجه نشدم مگه نه اینکه بایستی کلاسها به همراه کانفیگشون توی   domainclass  اضافه بشه من دو کلاس Author , Book نویسنده و کتاب درون دایرکتوری AuthorInfo رو به این بخش اضافه کردم بعدش باید از متد  LoadEntities  استفاده کنم مثلا بصورت زیر 
 LoadEntities(typeof(User).GetTypeInfo().Assembly, modelBuilder, "Decision.DomainClasses.Entities.AuthorInfo");
بعدش چی کار کنم تا روی دیتا بیس این کلاسها رو ببینم. با تشکر
  LoadEntities ( typeof (َAuthor) . GetTypeInfo ( ) .Assembly, modelBuilder, "Decision.DomainClasses.Entities" ) ;
‫۸ سال و ۱ ماه قبل، شنبه ۳۰ مرداد ۱۳۹۵، ساعت ۱۶:۲۲
خیلی عالی بود
اما اگه میتونی از MEF استفاده کنی کدهایی به مراتب تمیز‌تر و خواناتر داری و اگر بخواهی Namespace را تغییر بدی و هر خواسته دیگری داشته باشی مشکل پیدا نمی‌کنی
من در چند پروژه بزرگ استفاده کردم و خیلی خوب کار میکنه
‫۸ سال و ۱ ماه قبل، شنبه ۳۰ مرداد ۱۳۹۵، ساعت ۱۶:۰۹
من متد LoadEntiies رو بهصورت زیر تغییر دادم مشکل حل شد
  private static void LoadEntities(Assembly asm, DbModelBuilder modelBuilder, string nameSpace)
        {
            var entityTypes = asm.GetTypes()
                .Where(type => type.BaseType != null &&
                               type.BaseType != Type.GetType("System.Enum") &&
                               type.Name != "Entity" &&
                               type.Name != "BaseEntity" &&
                               type.Namespace != null &&
                               type.Namespace.Contains(nameSpace))
                .ToList();

            entityTypes.ForEach(modelBuilder.RegisterEntityType);
        }
از نظر من کد قبلی چندتا مشکل داشت
1- توی قسمت where  یک بار  baseType رو مخالف null و یک بار هم برابر null خواسته بود که این خودش باعث میشد تا کوئری گرفته شده  مقداری رو برنگردونه
2- شرطی که نوشته شده بود اگه مشکل بالا رو حل میشد باعث می‌شد تمام Class‌ها و Enumeration‌ها و Object هایی که جزء entity نبود رو باخودش بیاره و به عنوان یک Entity معرفی کنه
3- اینکه توی شرط نوشته شده بود Namespace==nameSpace و این یعنی اگر فضای نام کلاسی مثلا برابر DomainClasses.Entities.Common  بود، توی لیست entity‌های آورده نشه
خلاصه اینکه کوئری قبلی هیچ چیزی رو برنمیگردوند
من با کد بالایی مشکلم رو حل کردم ولی فکرکنم کدی دوستان در پست‌های قبلی گذاشتن بهتر باشه