首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >数据读取器不兼容...成员在数据读取器中没有对应的列

数据读取器不兼容...成员在数据读取器中没有对应的列
EN

Stack Overflow用户
提问于 2009-09-29 18:50:19
回答 6查看 29.4K关注 0票数 10

使用VS2008、SQL Server2008和WPF3.5,我对我的模式进行了一些更改,并更新了模型。它可以很好地编译和运行,直到客户端应用程序调用了一个特定的实体,并且我得到了以下内容(实际名称被替换):

代码语言:javascript
运行
复制
The data reader is incompatible with the specified '<Model>.<ViewBasedEntity>'. A member of the type, '<Property>', does not have a corresponding column in the data reader with the same name.

我已经在服务应用程序中搜索了相关的实体和属性名称,尝试在Table Map中重命名属性,但似乎有许多其他人报告了相同的错误,但似乎找不到及时的答案……

...Does任何人都知道如何追踪这个问题,如果是这样的话,有没有什么修复方法或方法可以避免将来出现这种情况?

EN

回答 6

Stack Overflow用户

发布于 2011-06-28 03:45:37

除了更新视图之外,您还可以更新函数Import:

转到模型浏览器窗口,展开映射详细信息窗口中的EntityContainer

  • Open
  • 函数
  • 如果实体名称(左列)与预期的字段名称(右列)不匹配,则可以更改右列以匹配返回字段的实际调用。
票数 12
EN

Stack Overflow用户

发布于 2012-11-22 20:24:56

我遇到了一个类似的问题,它产生了相同的错误消息--问题是proc返回的列名包含一个空格。

在创建复杂类型时,[my column]被创建为my_column

然后,当使用ExecuteStoreQuery执行proc时,数据读取器中不存在my_column,因为proc仍然返回[my column]

解决方案:删除proc列名中的空格,并为导入的函数重新创建复杂类型。

票数 5
EN

Stack Overflow用户

发布于 2009-09-29 19:51:52

好的--这就是skinny:

该特定视图被设置为存储过程的返回类型,该存储过程必须在模型的实体容器中设置为函数导入。

我已经更新了该视图以适应新的报告需求,但没有意识到它对函数导入的重要性。附加字段不是为此目的识别的数据集的一部分,因此它找不到与它们中的任何一个匹配的字段。

所以我复制了这个视图,并给它添加了'Report‘后缀,然后将原始视图还原为它期望的一组返回字段。

瞧!

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1494273

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档