使用npgsql提供程序和entityframework我正在尝试编写一个简单的ExecuteStoreQuery,如下所示:
var result = BusinessContextManager.Instance.ExecuteQuery(x => x.WrappedObjectContext.ExecuteStoreQuery<DataTable>("SELECT 2+2"));
但它失败并显示错误“Field not found”和堆栈跟踪
at Npgsql.NpgsqlRowDescription.FieldIndex(String fieldName) in ---path\Npgsql\NpgsqlRowDescription.cs:line 204
at Npgsql.NpgsqlDataReader.GetOrdinal(String Name) in --path\Npgsql2-master\src\Npgsql\NpgsqlDataReader.cs:line 184
at System.Data.Query.InternalTrees.ColumnMapFactory.TryGetColumnOrdinalFromReader(DbDataReader storeDataReader, String columnName, Int32& ordinal)
谁能告诉我我做错了什么?什么是字段索引,所以... ...
我尝试使用别名选择2 + 2作为结果,但仍然是相同的错误
entiryframework版本 - 5 npgsql版本 - 2.0.12.91
答案 0 :(得分:1)
在发布问题之后我发现它不能用TElement作为DataTable,所以我创建了自己的类(实体),我回来了,一切正常,但我仍然要问,是不是完成所以它返回一个数据表? (不知道,有些黑客......)