[英]Delete a LINQ to SQL record without loading it first
是否有可能讓LINQ to SQL使用PK刪除記錄,而不首先加載記錄? 類似於NHibernate的代理對象功能?
你應該能夠這樣做:
var person = new Person();
person.ID = someID;
using (var context = new DataContext(connString))
{
context.Persons.Attach(person, false); //attach is as unmodified
context.Persons.DeleteOnSubmit(person); //remove it
context.SubmitChanges(); //submit changes to db
}
除了約瑟夫的回答:
如果您的實體具有UpdateCheck設置為Always的任何字段,則可能無法以此方式刪除,除非您根據需要設置此類字段。
此外,如果要刪除涉及FK約束的多個相關實體,如果未按正確順序刪除實體(導致約束違規),則可能會遇到問題。 為避免這種情況,請根據需要設置此類FK中涉及的所有字段。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.