G'day大家.
我还在学习LINQ,如果这是天真的话请原谅我.当您直接处理SQL时,可以使用条件生成更新命令,而无需运行select语句.
当我使用linq时,我似乎遵循以下模式:
我想要做的是使用linq和延迟执行直接更新.是否可能直接在SQL上执行实际执行而没有任何数据传输到客户端?
DataContext dc = new DataContext
var q = from product in dc.Products
where product.Type = 1
set product.Count = 0
dc.SubmitChanges
Run Code Online (Sandbox Code Playgroud)
因此,实质上LINQ具有所需的所有信息,而无需使用select来生成更新命令.它将运行SQL:
Update Products Set Count = 0 Where Type = 1
Run Code Online (Sandbox Code Playgroud)
LINQ中是否存在类似"set"的关键字?
如何将其转换为LINQ?
select t.age as AgeRange, count(*) as Users
from (
select case
when age between 0 and 9 then ' 0-25'
when age between 10 and 14 then '26-40'
when age between 20 and 49 then '60-100'
else '50+' end as age
from user) t
group by t.age
Run Code Online (Sandbox Code Playgroud)
谢谢!
我使用linq进行sql连接的代码是:
var query1 = from u in dc.Usage_Computers
where u.DomainUser == s3
select u; // selects all feilds from table
GridView1.DataSource = query1;
GridView1.DataBind();
Run Code Online (Sandbox Code Playgroud)
我在"Domainuser"表中有一个名为"Operation"的字段,其值为"1,2,3".当我将这些值填充到数据网格时,我想将它们转换为有意义的值,如果Operation的值为1,则在datagrid中显示为"logon",如果为2,则"logoff"等...
从数据库中检索后如何为它们分配值?