Mic*_*Mao 1 c# linq asp.net entity-framework
这是我的错误消息The data types text and varchar are incompatible in the equal to operator.我的代码是这样的
var result = db.Table.Where(x => x.columnA == "A").ToList();
Run Code Online (Sandbox Code Playgroud)
我知道原因是columnA数据库中的类型是文本,所以它们无法匹配,我无法更新数据库方案.
我可以使用LINQ to SQL来做到这一点吗?
更新
这是我的DAO
[Required]
[StringLength(10)]
public string MessageName { get; set; }
Run Code Online (Sandbox Code Playgroud)
TEXT 列不支持等于运算符,即使在SQL中也是如此.
您必须创建它,以便将查询转换为LIKE运算符,可以使用Contains(LIKE '%str%'),StartsWith(LIKE '%str')或EndsWith(LIKE '%str')来实现.
如果你需要严格的平等,这样的事情应该有效:
var result = db.Table.Where(x => x.columnA.StartsWith("A") &&
x.columnA.EndsWith("A")).ToList();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4482 次 |
| 最近记录: |