美图齐众专注资阳网站设计 资阳网站制作 资阳网站建设
资阳网站建设公司服务热线:028-86922220

网站建设知识

十年网站开发经验 + 多家企业客户 + 靠谱的建站团队

量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决

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输出参数浅谈
URL地址:http://www.zsjierui.cn/article/dhppeje.html

其他资讯