(LINQ To SQL 语法及实例大全)
代码
Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.Common;
using System.Collections.Generic;
namespace FirstLinq
{
public partial class _Default : System.Web.UI.Page
{
NorthwindDataContext ctx = new NorthwindDataContext("Data Source=ZHANGSHUQIANG;Initial Catalog=Northwind;Persist Security Info=True;User ID=sa;Password=sa");
protected void Page_Load(object sender, EventArgs e)
{
Linq1();
Linq2();
Linq3();
}
/// <summary>
/// 增删改查
/// </summary>
private void Linq3()
{
//增
t_User user = new t_User();
user.UserName = "大气象";
user.Pwd = "123456";
ctx.t_User.InsertOnSubmit(user);//以前的方法是Add();
ctx.SubmitChanges();
//改
//参考这样的语法string s = (from a in ctx.Customers select a).Single(a => a.ID == 2);
t_User userUpdate = ctx.t_User.SingleOrDefault(t_User => t_User.ID == 2);//Single与SingleOrDefault没区别
userUpdate.UserName = "大气象1";
ctx.SubmitChanges();
//删
t_User userDelete = (from userinfo in ctx.t_User where userinfo.ID == 1 select userinfo).FirstOrDefault();
if (userDelete != null)
{
ctx.t_User.DeleteOnSubmit(userDelete);
ctx.SubmitChanges();
}
}
/// <summary>
/// 熟悉Linq to sql语法
/// </summary>
private void Linq2()
{
Customers customer = new Customers();
//执行普通的sql语句,查询CustomerID="ANATR"的记录
IEnumerable<Customers> customers = ctx.ExecuteQuery<Customers>("select * from Customers where CustomerID='ANATR'");
customer = customers.First();
Response.Write(customer.CustomerID);
//使用Linq查询单条记录
var cus = from c in ctx.Customers where c.CustomerID.Equals("ANATR") select c;
customer = cus.First();
Response.Write(customer.CompanyName);
//查询结果集,语法:from 临时表名 in 表集合 orderby 临时表名.字段名 升级序 select 临时表名
gdvCustomers.DataSource = from cust in ctx.Customers where cust.CustomerID != "ANATR" orderby cust.CompanyName descending select cust;
gdvCustomers.DataBind();
}
/// <summary>
/// 熟悉一下linq语法,变量的定义类似js,无须声明类型。
/// </summary>
private void Linq1()
{
var age = 29;
var username = "greatverve";
var userlist = new[] { "a", "b", "c" };
foreach (var user in userlist)
{
Response.Write(user);
}
}
}
}