此错误消息让我疯狂。
我在使用Html.ListBox和Html.DropDownList HtmlHelpers与ASP.NET MVC v1.0时得到它。填充列表工作正常 - 我可以查看它们等等 - 但是当我使用传递给Controller的FormCollection创建模型中的新记录来获取所选值时,会发生此错误。我已经尝试了几个不同的配置和代码安排,就其他几个帖子而言 - 没有乐趣。
希望有人能告诉我这是否是一个已知问题,以便我可以继续我的生活!如果有必要,我宁愿不必发布代码,但如果要求可以这样做。
哦,建议的解决方法/解决方案也不错; - )
TIA!
伯纳德。
好的,快速更新,我已经在回复中发布了三条评论,清除了我在这里做的详细信息。
我现在要分享另一个问题 - 我尝试过ScottGu的另一种推荐方法 - 实现ModelView。因此,当我这样做时,它基本上是相同的场景,但我得到一个“对象引用未设置为对象的实例”。我得到的同一个地方的错误“没有带有'IEnumerable'类型键'Blah'的ViewData项。”。
我开始认为这可能与EF的运作方式有关......
答案 0 :(得分:2)
好的,sooo我显然是EF / MVC noob ......
虽然问题是通过我实际实现正确的异常管理来解决的...异常消息(当我实际开始捕获它时)是“两个对象之间的关系无法定义,因为它们附加到不同的ObjectContext对象。” 。所以我现在使用相同的ObjectContext进行所有数据访问,事情又回到正轨。
感谢关心,下次我会有一个更聪明的问题 - 承诺!
伯纳德。
答案 1 :(得分:0)
不知道你是如何编码的,人们很难识别出有问题的区域。阅读这个论坛帖子 - 再往下就有类似的错误。
答案 2 :(得分:0)
您可以再次在发布验证的相应发布方法中绑定您的选择列表。 例如,在控制器的create视图中有一个错误,你可以在create post方法中再次绑定下拉列表。