【发布时间】:2010-10-07 21:12:09
【问题描述】:
可能重复:
string1 >= string2 not implemented in Linq to SQL, any workarround?
为了简要总结我想要实现的目标,我们有一个名为 Application 的表,它存储应用程序版本号。例如,该表的内容是
ApplicationID VersionID
1 R1.01.01.01
2 C8.00.00.01
2 C8.00.00.02
2 R8.10.00.00
2 R8.20.00.02
2 R9.00.00.01
2 R9.00.00.02
2 R9.00.00.03
3 R7.00.30.00
当我在 TSQL 中执行此查询时,没有问题并且我得到正确的结果(注意 VersionID 是 nvarchar 类型)
Select * From Applications where VersionID >= 'R9.00.00.01' and ApplicationID = 2
但是当我开始像这样使用 LINQ to SQL 时
var Applications = from v in db.Applications
where v.VersionID.StartsWith("R")
&& v.VersionID >= "R9.00.00.01"
&& v.ApplicationID == 2
orderby v.VersionID
select v;
然后我收到错误“运算符 >= 不能应用于“字符串”和“字符串”类型的操作数
如何在 LINQ to SQL 中实现这一目标,而不更改数据库端的任何内容?
【问题讨论】:
标签: c# linq tsql linq-to-sql