关于数据库(Oracle)上仅包含数字的字符串字段,我遇到了EF5问题。
以下是示例代码:
using (Entities ex = new Entities())
{
string nrcart = "861858662";
GLB_PESSOA_OPERADORA pessoa = ex.GLB_PESSOA_OPERADORA.FirstOrDefault(p => p.NR_CARTEIRINHA == nrcart);
}
我的问题是EF正在为数据库构建以下查询:
SELECT "Extent1"."ID_PESSOA_OPERADORA" AS "ID_PESSOA_OPERADORA",
"Extent1"."NR_CARTEIRINHA" AS "NR_CARTEIRINHA"
FROM "GLB_PESSOA_OPERADORA" "Extent1"
WHERE ("Extent1"."NR_CARTEIRINHA" = 861858662 /* @p__linq__0 */)
AND (ROWNUM <= (1))
请注意,查询不包含带有''on where语句的参数。 数据库中的字段,返回类中的属性,Model上的映射和nrcart变量都是字符串类型。为什么要删除引号?
如果没有它们,数据库将无法使用索引,并且查询运行速度太慢。
感谢您的帮助