加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 资源网站 > 资源 > 正文

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

发布时间:2020-12-14 18:28:24 所属栏目:资源 来源:网络整理
导读:在视图中针对@model System.Tuple Person,List Survey的强类型视图 我在for-each循环中使用: @Html.EditorFor(x = survey.Questions) 在“调查”中提出问题.它完美无瑕. 现在我还想将其他数据传递给自定义编辑器模板.我做了: @Html.EditorFor(x = survey.Q
在视图中针对@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传递给此EditorTemplate.

解决方法

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

但是,如果您只想传递HTML属性,则可以按顺序指定它们:

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

并通过以下方式在编辑器中访问它们

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

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读