這篇文章主要為大家展示了“如何解決Linq存儲過程返回問題”,內容簡而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領大家一起研究并學習一下“如何解決Linq存儲過程返回問題”這篇文章吧。
創新互聯公司是專業的大田網站建設公司,大田接單;提供成都做網站、網站制作,網頁設計,網站設計,建網站,PHP網站建設等專業做網站服務;采用PHP框架,可快速的進行大田網站開發網頁制作和功能擴展;專業做搜索引擎喜愛的網站,專業的做網站團隊,希望更多企業前來合作!
存儲過程
在我們編寫程序中,往往需要一些存儲過程,在LINQ to SQL中怎么使用呢?也許比原來的更簡單些。下面我們以NORTHWND.MDF數據庫中自帶的幾個存儲過程來理解一下。
1.標量返回
在數據庫中,有名為Customers Count By Region的存儲過程。該Linq存儲過程返回顧客所在"WA"區域的數量。
ALTER PROCEDURE [dbo].[NonRowset] (@param1 NVARCHAR(15)) AS BEGIN SET NOCOUNT ON; DECLARE @count int SELECT @count = COUNT(*)FROM Customers WHERECustomers.Region = @Param1 RETURN @count END
我們只要把這個存儲過程拖到O/R設計器內,它自動生成了以下代碼段:
[Function(Name = "dbo.[Customers Count By Region]")] public int Customers_Count_By_Region([Parameter (DbType = "NVarChar(15)")] string param1) { IExecuteResult result = this.ExecuteMethodCall(this, ((MethodInfo)(MethodInfo.GetCurrentMethod())), param1); return ((int)(result.ReturnValue)); }
我們需要時,直接調用就可以了,例如:
int count = db.CustomersCountByRegion("WA"); Console.WriteLine(count);
語句描述:這個實例使用Linq存儲過程返回在“WA”地區的客戶數。
2.單一結果集
從數據庫中返回行集合,并包含用于篩選結果的輸入參數。 當我們執行返回行集合的存儲過程時,會用到結果類,它存儲從存儲過程中返回的結果。
下面的示例表示一個存儲過程,該Linq存儲過程返回客戶行并使用輸入參數來僅返回將“London”列為客戶城市的那些行的固定幾列。
ALTER PROCEDURE [dbo].[Customers By City] -- Add the parameters for the stored procedure here (@param1 NVARCHAR(20)) AS BEGIN -- SET NOCOUNT ON added to prevent extra result sets from -- interfering with SELECT statements. SET NOCOUNT ON; SELECT CustomerID, ContactName, CompanyName, City from Customers as c where c.City=@param1 END
拖到O/R設計器內,它自動生成了以下代碼段:
[Function(Name="dbo.[Customers By City]")] public ISingleResult<Customers_By_CityResult> Customers_By_City( [Parameter(DbType="NVarChar(20)")] string param1) { IExecuteResult result = this.ExecuteMethodCall(this, ( (MethodInfo)(MethodInfo.GetCurrentMethod())), param1); return ((ISingleResult<Customers_By_CityResult>) (result.ReturnValue)); }
我們用下面的代碼調用:
ISingleResult<Customers_By_CityResult> result = db.Customers_By_City("London"); foreach (Customers_By_CityResult cust in result) { Console.WriteLine("CustID={0}; City={1}", cust.CustomerID, cust.City); }
語句描述:這個實例使用Linq存儲過程返回在倫敦的客戶的 CustomerID和City。
以上是“如何解決Linq存儲過程返回問題”這篇文章的所有內容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內容對大家有所幫助,如果還想學習更多知識,歡迎關注創新互聯行業資訊頻道!
網站題目:如何解決Linq存儲過程返回問題
URL分享:http://www.hntjjpw.com/article48/pgddhp.html
成都網站建設公司_創新互聯,為您提供建站公司、關鍵詞優化、外貿建站、網站制作、用戶體驗、App開發
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯