【发布时间】:2016-01-27 11:46:34
【问题描述】:
我正在尝试执行以下查询
SELECT object_id
FROM sys.tables
WHERE sys.tables.name = 'Projects'
作为
int n = context.Database.SqlQuery<int>(
"SELECT object_id from sys.tables where sys.tables.name = 'Projects'")
.FirstOrDefault();
我总是得到 n 0
如果我使用SqlConnection 并使用SqlCommand 查询它,我会得到正确的结果。那么为什么DbContext.Database.Connection 不让我执行一个普通的 SQL 查询呢?
为简单起见,我删除了SqlParameter,所以我知道这段代码不是 SQL 注入安全的。
【问题讨论】:
-
我认为您的表名不存在。如果我运行查询(在将名称更改为有效的名称后)它工作正常
标签: c# sql .net entity-framework-6