このコード:
int WebsiteID = int.Parse(Request.QueryString["id"]);
Website websiteObj = db.Websites
.SingleOrDefault(x => x.website_id == WebsiteID);
foreach (BusinessObjects.Page pageObj in websiteObj.Pages)
{
foreach (SubPage subpageObj in pageObj.SubPages)
{
pageObj.SubPages.Remove(subpageObj);
}
websiteObj.Pages.Remove(pageObj);
}
foreach (Sector sectorObj in websiteObj.Sectors)
{
foreach (Product productObj in sectorObj.Products)
{
sectorObj.Products.Remove(productObj);
}
websiteObj.Sectors.Remove(sectorObj);
}
db.Websites.DeleteObject(websiteObj);
Web サイトには複数のページがあり、ページには複数のサブページがあります。ウェブサイトにも複数のセクターがあり、各セクターには複数の製品があります。
Web サイトを削除し、それに関連するすべての関係とエンティティを消去したいと考えています。上記を書くためのより良い方法があると確信しています。
ロジックを改善する方法はありますか?