1
我想在特殊情況下從外鍵關係中刪除一些CascadeOnDelete標記。約定刪除CascadeOnDelete
這種情況是,如果關係的一端是特定類型而另一端不是,那麼我想將cascadeOnDelete設置爲false。
class CascadeOnDeleteSuppressionConvention : IConceptualModelConvention<AssociationType>, IConvention
{
public void Apply(AssociationType associationType, DbModel model)
{
if(!associationType.IsForeignKey)
return;
if(associationType.AssociationEndMembers[0].GetPOCOType() == typeof(someType) &&
associationType.AssociationEndMembers[1].GetPOCOType() != typeof(someTypeOtherType))
associationType.AssociationEndMembers[0].DeleteAction = DeleteAction.None;
}
}
不幸的是,我不知道如何從代碼優先模型中獲得POCO類型。
有人可以提供有關如何獲得該類型的信息嗎?