gpt4 book ai didi

asp.net-mvc - 将匿名对象从 View 传递到局部 View

转载 作者:行者123 更新时间:2023-12-03 13:33:50 25 4
gpt4 key购买 nike

我从herehere等各种其他相关问题中了解到,您不能将匿名类型的对象从 Controller 传递到 View ,因为匿名类型是使用内部访问器定义的。 View和Controller代码被编译到不同的程序集中,因此尝试使用它会导致此错误...

object does not contain a definition for 'foo'



很好,我可以接受,尽管起初很烦人。有足够的建议解决方法来安抚我。

但是,我认为您仍然可以将匿名类型从 View 传递到部分 View ,因为这两个 View 都是在同一个程序集中编译的。

Razor 查看代码...
@Html.Partial("Partial1", new { foo = "Something", bar = "Something else" })

以及“Partial1”的局部 View 代码
@model dynamic 

<h1>@Model.foo</h1>
<span>@Model.bar</span>

奇怪的是,这个WAS在新的MVC项目的开发开始时就起作用了,但是当我添加更多 View 时,它就停止了工作,现在给了我上面提到的错误。

好像我已经达到一个 View 和部分 View 不再被编译到同一程序集中的阈值一样。但是我只是在猜测。

我想知道是否有人可以阐明这一点。

最佳答案

有关详细信息,请在此处查看问题和我的回答:

MVC Razor dynamic model, 'object' does not contain definition for 'PropertyName'

本质上,它停止工作的最可能原因是因为您在同一文件夹中有另一个 View ,该 View 的模型类型不可解析。

用损坏的模型类型更正令人讨厌的 View ,清理并重建解决方案,它应该可以再次工作。

关于asp.net-mvc - 将匿名对象从 View 传递到局部 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9314656/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com