LINQ to SQL語句經驗總結
LINQ to SQL有很多值得學習的地方,這里我們主要介紹LINQ to SQL語句,包括介紹一對多關系和多對多關系等方面。
LINQ to SQL語句簡單形式
說明:new一個對象,使用InsertOnSubmit方法將其加入到對應的集合中,使用SubmitChanges()提交到數(shù)據(jù)庫。
- NorthwindDataContext db = new NorthwindDataContext();
- var newnewCustomer = new Customer
- {
- CustomerID = "MCSFT",
- CompanyName = "Microsoft",
- ContactName = "John Doe",
- ContactTitle = "Sales Manager",
- Address = "1 Microsoft Way",
- City = "Redmond",
- Region = "WA",
- PostalCode = "98052",
- Country = "USA",
- Phone = "(425) 555-1234",
- Fax = null
- };
語句描述:使用InsertOnSubmit方法將新客戶添加到Customers 表對象。調用SubmitChanges 將此新Customer保存到數(shù)據(jù)庫。
LINQ to SQL語句一對多關系
說明:Category與Product是一對多的關系,提交Category(一端)的數(shù)據(jù)時,LINQ to SQL會自動將Product(多端)的數(shù)據(jù)一起提交。
- var newnewCategory = new Category
- {
- CategoryName = "Widgets",
- Description = "Widgets are the ……"
- };
- var newnewProduct = new Product
- {
- ProductName = "Blue Widget",
- UnitPrice = 34.56M,
- Category = newCategory
- };
語句描述:使用InsertOnSubmit方法將新類別添加到Categories表中,并將新Product對象添加到與此新Category有外鍵關系的Products表中。調用SubmitChanges將這些新對象及其關系保存到數(shù)據(jù)庫。
LINQ to SQL語句多對多關系
說明:在多對多關系中,我們需要依次提交。
- var newnewEmployee = new Employee
- {
- FirstName = "Kira",
- LastName = "Smith"
- };
- var newnewTerritory = new Territory
- {
- TerritoryID = "12345",
- TerritoryDescription = "Anytown",
- Region = db.Regions.First()
- };
- var newnewEmployeeTerritory = new EmployeeTerritory
- {
- Employee = newEmployee,
- Territory = newTerritory
- };
【編輯推薦】