我正在使用编辑器模板在我的 viewModel 视图中创建一个 Html.EditorFor(property) 。有一个不同的 .cshtml 文件包含“@Html.EditorFor(property)”。
现在,根据我的 viewModel 的属性值,我需要改为显示 DisplayFor。
我尝试通过在我的 EditorTemplate 中添加一些条件逻辑来做到这一点,但似乎无法从那里访问我的 viewModel 的属性(因为编辑器模板使用的是@model.someOtherModel 而不是@viewModel)。所以如果我可以说类似的话
// Razor
if(true)
{ EditorFor(property) }
else {DisplayFor(property)}
在我的 viewModel 看来,这可行。我只是不知道如何为我的对象定义一个“显示模板”,就像我定义一个编辑器模板一样。
另一种解决方案可能是从编辑器模板访问 viewModel 数据......这可能吗?