gpt4 book ai didi

.net - 如何通过 @Html.EditorFor 将 ViewData 的值传递给编辑器模板

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

在强类型 View 中反对 @model System.Tuple<Person, List<Survey>>

我在 for-each 循环中使用:

  @Html.EditorFor(x => survey.Questions)

在“调查”中提出问题。它运行完美。

现在我还想将附加数据传递到自定义编辑器模板。我做了:

@Html.EditorFor(x => survey.Questions, new { htmlAttributes = new { PersonId = 1000 } })

然后在 Edtior 模板中我想引用这个 PersonId并显示它。

这是我制作的编辑器模板(用于问题的快捷方式):

  @using WebApplication2.Models
@model Question
<div>
@ViewData["PersonId"]
</div>

但什么也没显示。

如何正确通过PersonId = 1000到此编辑器模板。

最佳答案

经过一番搜索后,发现了以下用于迭代嵌套属性的堆栈溢出答案。我无法使强制转换为“动态”工作,但使用反射正确检索了嵌套的匿名对象。 https://stackoverflow.com/a/13981462/1046155

但是,如果您决定仅使用 HTML 属性,则可以在动态对象中指定它们:

@Html.EditorFor(x => survey.Questions, new { PersonId = 1000, PersonName = "John", PersonAge=10, etc... })

并使用@ViewData在编辑器中访问它们:

<div>
@ViewData["PersonId"]
@ViewData["PersonName"]
@ViewData["PersonAge"]
etc...
</div>

关于.net - 如何通过 @Html.EditorFor 将 ViewData 的值传递给编辑器模板,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25631581/

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