强类型视图中的错误消息 - 啥是“字典”?
Posted
技术标签:
【中文标题】强类型视图中的错误消息 - 啥是“字典”?【英文标题】:Error Message in Strongly Typed View - What is the "dictionary"?强类型视图中的错误消息 - 什么是“字典”? 【发布时间】:2013-04-09 14:50:10 【问题描述】:以下是错误类型传入强类型视图时的错误消息示例:
The model item passed into the dictionary is of type 'foo', but this dictionary requires a model item of type 'bar'.
这个错误提示“这本词典”需要不同的模型。我的问题是,为什么是“字典”?如果错误消息说“此类需要'bar'类型的模型项”,对我来说会更有意义。
错误信息指的是什么字典?
【问题讨论】:
模型被序列化为表单数据的字典。 【参考方案1】:Dictionary
是一个框架类。字典用于保存 MVC 中的键/值集合。错误消息表明 Dictionary
的初始化类型与 MVC 尝试放入其中的项目不同。
http://msdn.microsoft.com/en-us/library/xfhwa508.aspx
This Google Search 显示了许多 ASP.NET MVC 使用的字典。
【讨论】:
谢谢罗伯特-但是什么字典?我想我在问幕后发生了什么。 不知道是哪一个;你还没有向我们展示你的代码。如果我猜的话,我会说是ViewDataDictionary
或ModelDataDictionary
。
嗯 - 将视图编译为一个类似乎是合理的,并且该类需要一个特定类型的模型。我猜在幕后有一个 Dictionary 用于实例化视图类(只是一个猜测)。
ASP.NET MVC 的源代码是freely available,如果你真的想知道细节的话。在源代码中搜索“传入字典的模型项是类型”。以上是关于强类型视图中的错误消息 - 啥是“字典”?的主要内容,如果未能解决你的问题,请参考以下文章