LINQ Deletes
The following example deletes a record for a given Id.
NetSuiteEntities context = new NetSuiteEntities();
var query = from Account in context.Account
where Account.Id == "1"
select Account;
context.Account.Remove(query.FirstOrDefault());
try {
context.SaveChanges();
} catch (Exception e) {
Console.Write(e.Message);
}
This next example deletes a group of records whose acctName value equals "Checking". Note that LINQ only
performs one delete operation per record at a time as specified by the Id of the record. Because of this LINQ
incurs a performance penalty as it opens a fresh connection with the data source every time it deletes a record.
NetSuiteEntities context = new NetSuiteEntities();
var query = from Account in context.Account
where Account.acctName == "Checking"
select Account;
foreach (var result in query) {
var delete = from Account in context.Account
where Account.Id == result.Id
select Account;
context.Account.Remove(delete.FirstOrDefault());
}
try {
context.SaveChanges();
} catch (Exception e) {
Console.Write(e.Message);
}