Gra*_*ton 39 c# linq linq-to-sql
是否可以在LINQ查询中使用If Else条件?
就像是
from p in db.products
if p.price>0
select new
{
Owner=from q in db.Users
select q.Name
}
else
select new
{
Owner = from r in db.ExternalUsers
select r.Name
}
Run Code Online (Sandbox Code Playgroud)
Ric*_*ett 61
这可能有用......
from p in db.products
select new
{
Owner = (p.price > 0 ?
from q in db.Users select q.Name :
from r in db.ExternalUsers select r.Name)
}
Run Code Online (Sandbox Code Playgroud)
我假设db这是LINQ-to-SQL/Entity Framework /类似(不是LINQ-to-Objects);
一般来说,你使用条件语法(a?b:c)做得更好 - 但是,我不知道它是否适用于你的不同查询(毕竟,你如何编写TSQL?).
对于你可以做的事情类型的简单例子:
select new {p.PriceID, Type = p.Price > 0 ? "debit" : "credit" };
Run Code Online (Sandbox Code Playgroud)
你可以做更多更丰富的事情,但我真的怀疑你可以选择有条件的表格.当然,欢迎你试试......
| 归档时间: |
|
| 查看次数: |
116051 次 |
| 最近记录: |