var query = from s in bv.baParticularHeaders
from v in bv.baPlanColumnStructures
where x.Contains(s.Particular_Num)
select new LevelList
{
Value = 'Level ' + LTRIM(Rtrim(Convert(Char,P.Level_Num))) + ' - ',
id = 'Column ' + LTRIM(Rtrim(Convert(Char,P.Column_Num))) + ' ',
Text = v.Column_Description
};
return query.Distinct().OrderBy(o => o.Value).AsQueryable<LevelList>();
获取这两行代码时出错。
Value = 'Level ' + LTRIM(Rtrim(Convert(Char,P.Level_Num))) + ' - ',
id = 'Column ' + LTRIM(Rtrim(Convert(Char,P.Column_Num))) + ' ',
任何正文可以帮我解决如何在LINQ中转换它吗?
由于
答案 0 :(得分:3)
您不能只剪切和粘贴SQL,重新排列它并希望获得有效的LINQ查询。目的是将适当的C#代码(已翻译)编写到SQL中。在这种情况下,我怀疑你想要:
var query = from s in bv.baParticularHeaders
from v in bv.baPlanColumnStructures
where x.Contains(s.Particular_Num)
select new LevelList
{
Value = "Level " + P.Level_Num + " - ";
id = "Column " + p.Column_Num + " ",
Text = v.Column_Description
};
return query.Distinct().OrderBy(o => o.Value).AsQueryable();
请注意字符串文字 - "Level "
而不是'Level '
。代码必须首先是有效的C#。
(假设Level_Num
和Column_Num
是数字,我看不出为什么修剪它们会有意义。)