我是asp.net和mvc的新手。 我有一个类AsyApp
public class AsyApp
{
[Key]
public int AsyAppId { get; set; }
[DisplayName("Nom")]
public string Name { get; set; }
public virtual ICollection<Scene> Scenes { get; set; }
}
它有一系列场景
public class Scene
{
[Key]
[Required]
public int SceneId { get; set; }
[ForeignKey("AsyApp")]
public int AsyAppId { get; set; }
[Required]
public virtual AsyApp AsyApp { get; set; }
[ForeignKey("Name")]
public int NameId { get; set; }
[DisplayName("Nom")]
public virtual Translation Name { get; set; }
public int Order { get; set; }
}
并且Scene具有翻译类
中的属性Namepublic class Translation
{
[Key]
[Required]
public int TranslationId { get; set; }
public string Fr { get; set; }
public string En { get; set; }
}
这是我的问题。 我将使用类Translation来处理应用程序中每个字符串的语言。我可以参加任何其他课程
我希望在删除应用程序时删除相应的场景和本地化
以下是我删除应用的代码
[HttpPost, ActionName("Delete")]
[ValidateAntiForgeryToken]
public ActionResult DeleteConfirmed(int? id)
{
if (id == null)
{
return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
}
AsyApp asyApp = db.AsyApps.Find(id);
if (asyApp == null)
{
return HttpNotFound();
}
db.AsyApps.Remove(asyApp);
db.SaveChanges();
return RedirectToAction("Index");
}
要自动删除的场景接缝,而不是与它们相关的本地化...
希望你能帮助我
非常感谢
答案 0 :(得分:0)
看看这个链接: https://msdn.microsoft.com/en-us/data/jj591620.aspx#CascadeDelete
您可以使用Fluent API启用级联删除。