Once ownership has been transferred, a simple loop
needs to be performed to update the records to the new SalesPersonID.
AdventureWorksSalesDataContext db = new
AdventureWorksSalesDataContext();
var sohQuery =
from soh in db.SalesOrderHeader
where soh.SalesPersonID == 284
select soh;
List
sohList = sohQuery.ToList();
Using (AdventureWorksSalesDataContext db2 = new
AdventureWorksSalesDataContext)
{
db2.SalesOrderHeader.AttachAll(sohList, false);
foreach (SalesOrderHeader soh2 in sohList)
{
soh2.SalesPersonID = 276;
}
db2.SubmitChanges();
}
Slick. OK, here??™s one more example. It shows how you can delete a SalesOrderHeader object. As stated
earlier, the Remove() method should be used for delete operations.
304
Chapter 15: Advanced LINQ to SQL Topics
Using (AdventureWorksSalesDataContext db = new
AdventureWorksSalesDataContext)
{
SalesOrderHeader soh = new SalesOrderHeader() {
CustomerID = 21768, ContactID = 13278} ;
db.SalesOrderHeader.Attach(soh);
db.SalesOrderHeader.Remove(soh);
db.SubmitChanges();
}
When this code executes, it removes two rows from the SalesOrderHeader table.
Pages:
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483