linq to sql对存储过程和自定义sql的支持

这是一些关于linq to sql零散的知识点,如果你要系统的学习linq to sql的知识,请看 ScottGu的博客
Part 1: Introduction to LINQ to SQL Part 2: Defining our Data Model Classes Part 3: Querying our Database Part 4: Updating our Database Part 5: Binding UI using the ASP:LinqDataSource Control Part 6: Retrieving Data Using Stored Procedures Part 7: Updating our Database using Stored Procedures

......
linq to sql默认的CURD行为是linq表达式,如获取数据
NorthwindDataContext northwind = new NorthwindDataContext();
var product = from p in northwind.Products
                     where p.CategoryID == 1
                     select p;
linq表达式会在运行时动态生成sql语句。
linq to sql也对存储过程和自定义sql提供支持
一、sp
拖一个已写好的存储过程到设计面板的右边,linq to sql自动为我们生成与存储过程有相同名字的一个方面,这样我们可通过NorthwindDataContext实例调用,调用存储过程转化成调用一个实例方法了,太简单了。

存储过程的返回值是一个自动生成的新的数据类型,命名规则是存储过程名+Result,当你拖动sp到设计器左边指定数据类型中,sp生成的方法的返回值就是这种类型的集合。返回结果集同样支持linq to sql的修改和删除操作。
对于插入更新删除对sp的支持是这样的


二、自定义sql

NorthwindDataContext内置的ExecuteQuery提供了对查询的自定义sql的支持,你可像上面一样写查询sql,也可以返回自定义的对象。
返回的结果集同样适用于linq to sql对对象的修改和删除操作

对于修改和删除的自定义sql,用ExecuteCommand来执行


不管是linq to sql表达式,还是sp,还是自定义sql,都对对象的更新,删除和规则验证有同样支持。

1035481.html?type=1

shore 2008-01-11 16:47 发表评论

转载于:https://www.cnblogs.com/hotsoho.net/archive/2008/01/11/1206597.html

  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 扫一扫,分享海报

表情包
插入表情
评论将由博主筛选后显示,对所有人可见 | 还能输入1000个字符
©️2022 CSDN 皮肤主题:编程工作室 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值