91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

LINQ中怎么自定義業務

發布時間:2021-07-20 11:15:05 來源:億速云 閱讀:96 作者:Leah 欄目:編程語言

LINQ中怎么自定義業務,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

LINQ TO SQL很好很強大,它幾乎包含了我們能夠想到的所有與數據庫有關的操作,甚至也包含了一些我們可能都沒有想到的。

但不管怎樣,也許我們需要在LINQ TO SQL的操作中添加一個LINQ自定義業務邏輯,例如在插入某個實體的時候編寫日志等等。如何實現這樣的功能呢?

其實這一點,LINQ TO SQL在設計的時候也考慮到了。我們可以打開那個dtml文件的designer.cs文件,我們發現有些隱藏的代碼

LINQ中怎么自定義業務

首先,我們看到NorthwindDataContext這個類型是一個局部類型(Partial Class),而且上述定義的一些方法也是局部方法(Partial Method)

局部方法是C# 3.0的新增特性。它使用在如下場景:

某個方法可有可無。通過partial 關鍵字聲明的目的是,可以讓其他地方代碼可以調用它。但如果該方法最終沒有被實現,那么包括方法聲明以及調用代碼都會被刪除掉。

這個特性與虛方法,抽象方法都不同。

假設我們需要在InsertCustomer的時候添加一些業務邏輯,那么該怎么做呢?

using System;  using System.Collections.Generic;  using System.Linq;  using System.Text;    namespace Model  {      public partial class NorthwindDataContext      {          partial void InsertCustomer(Customer instance)          {             //這里可以實現自己的保存邏輯,根據傳入的一個Customer的實例                this.ExecuteCommand("Insert Into.....");              //還可以寫日志,等等          }      }  }

【注意】一旦我們這樣做了,那么插入Customer的邏輯就全部由我們來負責了。你需要確保這里面的代碼是完整的

protected void addcustomer_Click(object sender, EventArgs e)  {      Model.NorthwindDataContext db = new Model.NorthwindDataContext(connectionString);      Model.Customer c = new Model.Customer()      {          CustomerID = "AAAAAS",          CompanyName = "Xizhang"     };        db.Customers.InsertOnSubmit(c);      db.SubmitChanges();    }

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

张北县| 东山县| 嘉黎县| 深水埗区| 五大连池市| 哈尔滨市| 望谟县| 青海省| 广东省| 六盘水市| 卢氏县| 湖口县| 靖远县| 新乡市| 阿荣旗| 三亚市| 池州市| 灵宝市| 屏东县| 二连浩特市| 定边县| 麦盖提县| 手游| 文成县| 阜宁县| 瓦房店市| 常州市| 塔河县| 疏附县| 东源县| 泌阳县| 东辽县| 拜城县| 无棣县| 乌拉特后旗| 麻阳| 邵阳市| 怀安县| 东平县| 香港| 阳山县|