我有两个具有一对多关系的实体(SaleInvoice和SaleInvoiceDetail)。我添加的这段代码正在运行,但我想知道更新或删除这种导航属性中的值的最佳做法是什么(在我的SaleInvoiceDetails列表中)。这样做的最佳方式是什么?
HttpSession session=request.getSession(); //in CSRFToken class
session.setAttribute("csrfToken",csrfToken);
HttpSession session=request.getSession(false); // in ValidateCSRFToken
String csrfToken=(String)session.getAttribute("csrfToken");
答案 0 :(得分:0)
您需要另一个内部if条件来执行删除:
if (saleInvoiceDetail.Id != 0)
{
var invoiceDetailInDb = context.SaleInvoiceDetails.Find(saleInvoiceDetail.Id);
if(invoiceDetailInDb == null) DoDelete();
else{
invoiceDetailInDb = saleInvoiceDetail;
invoiceDetailInDb.SaleInvoiceId = saleInvoiceInDb.Id;
}
}