鑑於以下UPSERT類似之情況:是否支持新行創建?
EntityType myEntity = null;
if(newItem)
{
myEntity = new EntityType();
}
else
{
myEntity = context.TableName.Where(item => item.PrimaryKey == key).Single();
}
if(newItem)//This check bugs me
{
context.TableName.Add(myEntity);//conditionally add the item to the context
}
context.SaveChanges();
我必須確定,如果該項目需要被添加到上下文。實體框架是否提供任何種類的context.TableName.NewRow()
或類似的來保存最後的條件檢查?這樣我可以做這樣的事情,而不是....
EntityType myEntity = null;
if(newItem)
{
myEntity = context.TableName.NewRow();
}
else
{
myEntity = context.TableName.Where(item => item.PrimaryKey == key).Single();
}
context.SaveChanges();
一個通用的擴展方法應該爲我做這個簡單的任務,只是似乎很奇怪,(如果)這不已經在框架存在。
有用第一個條件中的「添加」? – Basic