当前位置:科普知识站>综合知识>

linqor怎么写

综合知识 阅读(1.32W)
1. 请教一个linq语句该怎么写

var result=from t in

linqor怎么写

(from p in A join q in B

on new {TId=p.id} equals new {TId=q.id}

into tempList

from tt in tempList.DefaultIfEmpty()

select new{aid=(tt == null ? 0 : tt.id),

name=(tt == null ? 0 : tt.name)})

group t by new {t.aid,t.name}

into g

select new{num=g.Count(t=>t.aid),aid=t.aid,name=t.name};

手打linq 大概是这样,如果有bug 请你自己调下。

2. LINQ 怎么写查询,自己写的

当然,可以自己手写,但是大多数时候我们不会手写。

手写连接数据库这块,一般用于做个教程之类的,简单直观。

我也简单的写一个,以SQL SERVER的NORTHwinD数据库为例吧:

var db = new DataContext

(@"Data Source=(local);Initial Catalog=Northwind;Integrated Security=true;");

var results = from c in db.GetTable<Customer>()

where c.City == "London"

select c;

foreach (var c in results)

Console.WriteLine("{0}t{1}", c.CustomerID, c.City);

3. LinQ中增删改语句如何写

我还是贴代码吧,说是说不明白的。

以下是我的一个项目里面的节选,分别实现了增删查改功能,你可以看看LINQ对数据的操作。

/// <summary>

/// Select

/// </summary>

/// <returns></returns>

public IQueryable Linqmy()

{

var my = from s in db.account select s;

return my;

}

/// <summary>

/// Insert

/// </summary>

/// <param name="name"></param>

/// <param name="pwd"></param>

/// <returns></returns>

public bool LinqInsertmy(string name,string pwd)

{

account account = new account();

account.name = name;

account.pwd = pwd;

db.account.InsertOnSubmit(account);

db.SubmitChanges();

return true;

}

/// <summary>

/// Delete

/// </summary>

/// <param name="id"></param>

/// <returns></returns>

public bool LinqDelete(int id)

{

account account = db.account.Single(a => a.id == id);

db.account.DeleteOnSubmit(account);

db.SubmitChanges();

return true;

}

/// <summary>

/// Update

/// </summary>

/// <param name="id"></param>

/// <param name="name"></param>

/// <param name="pwd"></param>

/// <returns></returns>

public bool LinqUpdate(int id, string name, string pwd)

{

account account = db.account.Single(a => a.id == id);

account.name = name;

account.pwd = pwd;

db.SubmitChanges();

return true;

}

4. linq 查询本周的所有信息

DateTime dt = DateTime.Now; //当前时间

DateTime startWeek = dt.AddDays(1 - Convert.ToInt32(dt.DayOfWeek.ToString("d"))); //本周周一

DateTime endWeek = startWeek.AddDays(6); //本周周日

var q = items.where(p=>p.date >= startWeek && p.date