car*_*pat 1 c# linq asp.net linq-to-sql
我有一张桌子,如下所示:
prefix | value
ABC 1234
ABC 5678
DEF 1234
Run Code Online (Sandbox Code Playgroud)
是否可以创建一个 linq 查询,其中前缀和值连接起来以便在 where 子句中进行比较?我已经尝试过这个,但它总是返回一个空集:
selected =
from i in dc.items
where i.prefix + i.value == "ABC1234"
select i;
Run Code Online (Sandbox Code Playgroud)
编辑:以下 T-SQL 得出正确的结果:
WHERE LTRIM(RTRIM([prefix])) + LTRIM(RTRIM([value])) = 'ABC1234'
Run Code Online (Sandbox Code Playgroud)
Edit2:以下内容结合了下面的大部分答案,仍然不起作用:
where (String.Concat(i.prefix.Trim(), i.value.Trim())) == "ABC1234"
Run Code Online (Sandbox Code Playgroud)
Edit3:所以我已经让它工作了,但我不知道为什么。我已经接受了答案,但如果有人发布为什么它有效,我将不胜感激:)
这有效(返回 n 行):
var temp = dc.items.Where(i => i.prefix.Trim() + i.prefix.Trim() == "ABC1234");
Run Code Online (Sandbox Code Playgroud)
这不起作用(返回 0 行):
var temp =
from i in dc.items
where i.prefix.Trim() + i.value.Trim() == "ABC1234"
select i;
Run Code Online (Sandbox Code Playgroud)
我不会说英语。尝试这个:
var selected = dc.Where(x => x.prefix + x.value == "ABC1234");
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
9862 次 |
| 最近记录: |