LINQtoSQL输出参数浅谈

在向大家详细介绍LINQ to SQL输出参数之前,首先让大家了解下输入参数,然后全面介绍LINQ to SQL输出参数。

创新互联建站致力于互联网网站建设与网站营销,提供网站设计、成都网站设计、网站开发、seo优化、网站排名、互联网营销、小程序制作、公众号商城、等建站开发,创新互联建站网站建设策划专家,为不同类型的客户提供良好的互联网应用定制解决方案,帮助客户在新的全球化互联网环境中保持优势。

LINQ to SQL输出参数映射到引用参数,并且对于值类型,它将参数声明为可以为 null。

下面的示例带有单个输入参数(客户 ID)并返回一个输出参数(该客户的总销售额)。

 
 
 
  1. ALTER PROCEDURE [dbo].[CustOrderTotal]   
  2. @CustomerID nchar(5),  
  3. @TotalSales money OUTPUT  
  4. AS  
  5. SELECT @TotalSales = SUM(OD.UNITPRICE*(1-OD.DISCOUNT) * OD.QUANTITY)  
  6. FROM ORDERS O, "ORDER DETAILS" OD  
  7. where O.CUSTOMERID = @CustomerID AND O.ORDERID = OD.ORDERID 

其生成代码如下:

 
 
 
  1. [Function(Name="dbo.CustOrderTotal")]  
  2. public int CustOrderTotal(  
  3. [Parameter(Name="CustomerID"DbType="NChar(5)")]string customerID,  
  4. [Parameter(Name="TotalSales"DbType="Money")]  
  5. ref System.Nullable totalSales)  
  6. {  
  7. IExecuteResult result = this.ExecuteMethodCall(this,  
  8. ((MethodInfo)(MethodInfo.GetCurrentMethod())),  
  9. customerID, totalSales);  
  10. totalSales = ((System.Nullable)  
  11. (result.GetParameterValue(1)));  
  12. return ((int)(result.ReturnValue));  

我们使用下面的语句调用此存储过程:注意:LINQ to SQL输出参数是按引用传递的,以支持参数为“in/out”的方案。在这种情况下,参数仅为“out”。

 
 
 
  1. decimal? totalSales = 0;  
  2. string customerID = "ALFKI";  
  3. db.CustOrderTotal(customerID, ref totalSales);  
  4. Console.WriteLine("Total Sales for Customer '{0}' = {1:C}",   
  5. customerID, totalSales); 

语句描述:这个实例使用返回 Out 参数的存储过程。

好了,就说到这里了,其增删改操作同理。相信大家通过这5个实例理解了存储过程。

【编辑推荐】

  1. LINQ to DataSet查询详解
  2. Linq实现XML转换浅谈
  3. Linq to SQL强类型DataContext
  4. Linq SelectMany学习经验
  5. 使用LINQ进行数据转换剖析

当前文章:LINQtoSQL输出参数浅谈
文章起源:http://www.shufengxianlan.com/qtweb/news47/298597.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联