Използвам функцията за мигриране на EF 4.3, за да създавам скриптове за мигриране на бази данни. Когато стартирам командата Add-Migration, генерираният скрипт се създава така:
CreateTable(
"dbo.Recipients",
c => new
{
RecipientID = c.String(nullable: false, maxLength: 128),
SurveyRoundID = c.String(nullable: false, maxLength: 128),
LastUpdatedAt = c.DateTime(),
})
.PrimaryKey(t => t.RecipientID)
.ForeignKey("dbo.Employees", t => t.EmployeeID, cascadeDelete: true)
.ForeignKey("dbo.SurveyRounds", t => t.SurveyRoundID, cascadeDelete: true)
.Index(t => t.EmployeeID)
.Index(t => t.SurveyRoundID);
Проблемът, който имам, е, че миграцията на скеле избира cascadeDelete като true, въпреки че обектът Recipient не е господар на релацията.
Засега ръчно променям параметъра cascadeDelete на false, но бих искал да знам защо избира true по подразбиране.
Благодаря ти, Идо.