آقای نصیری با سلام. من هر وقت برای بروزرسانی دیتابیس دستور Add-migration را در Package manager console وارد میکنیم ، همیشه در اسکریپت ایجاد شده من جدول reportparameter هم وجود دارد ، در حالیکه اصلاً تغییری در آن ایجاد نکردم.
در بالا فقط یک ستون به جدول classes ایجاد کردم ولی همیشه برای جدول reportParameter که در جدول نیز وجود دارد هم اسکریپت ایجاد میکند.
namespace Dal.Ef.Migrations { using System; using System.Data.Entity.Migrations; public partial class AddActiveColumnToClassesTable : DbMigration { public override void Up() { CreateTable( "dbo.ReportParameters", c => new { Id = c.Int(nullable: false, identity: true), CenterCode = c.String(maxLength: 10), CenterTitle = c.String(maxLength: 100), TermCode = c.String(maxLength: 10), TermTitle = c.String(maxLength: 100), MasulBarnamerizi = c.String(maxLength: 100), ModirAmuzesh = c.String(maxLength: 100), Term_Id = c.Int(nullable: false), Center_Id = c.Int(nullable: false), }) .PrimaryKey(t => t.Id) .ForeignKey("dbo.Terms", t => t.Term_Id, cascadeDelete: true) .ForeignKey("dbo.Centers", t => t.Center_Id, cascadeDelete: true) .Index(t => t.Term_Id) .Index(t => t.Center_Id); AddColumn("dbo.Classes", "IsActive", c => c.Boolean(nullable: false)); } public override void Down() { DropIndex("dbo.ReportParameters", new[] { "Center_Id" }); DropIndex("dbo.ReportParameters", new[] { "Term_Id" }); DropForeignKey("dbo.ReportParameters", "Center_Id", "dbo.Centers"); DropForeignKey("dbo.ReportParameters", "Term_Id", "dbo.Terms"); DropColumn("dbo.Classes", "IsActive"); DropTable("dbo.ReportParameters"); } } }
البته من یکبار بعد از آنکه جدول reportParameter را ایجاد کرده بودم ، دستی آن را از دیتابیس حذف کرده بودم.
متشکرم.