gpt4 book ai didi

javascript - ASP.NET MVC 2 - 何时使用模板与何时使用局部 View

转载 作者:数据小太阳 更新时间:2023-10-29 04:18:42 25 4
gpt4 key购买 nike

ASP.NET MVC 2 Preview 1 中的一项新功能是支持编辑器模板和显示模板的概念,这允许您使用简单的 HTML 帮助程序预定义给定对象的显示方式或编辑方式调用:

<%=Html.EditorFor(customer => customer) %>
<%=Html.DisplayFor(customer => customer) %>

这很酷,但我真的看不出它与用于相同目的的局部 View 之间的区别。此外,在示例中我看到编辑器模板不包含实际的表单标签,如果我需要为给定的编辑器提供一些客户端功能(比如通过 jQuery),我不能安全地将代码放在模板,因为我在客户端中添加逻辑的表单上没有静态句柄。在我正在处理的应用程序中,我混合了编辑器模板和部分 View ,我渲染它们来编辑内容。根据表单的复杂性,我正在创建一个编辑器,因为我选择了一种方法而不是另一种方法,但这当然会增加应用程序的不一致性。

为什么在局部 View 上使用模板,反之亦然?此外,在使用编辑器模板时,将客户端逻辑添加到编辑器而不将其复制到使用该编辑器的每个 View 的理想方式是什么?

最佳答案

ScottGu 在他的 blogpost about MVC V2 中解释了其中的一些内容.

据我所知,这将为您传递给助手的对象的每个属性创建输入。所以如果你有这个对象:

public class Customer
{
public string Name { get; set; }
[UIHint("MyCoolCalendar")]
public DateTime CoolDate { get; set; }
}

然后创建一个编辑器:

<%= Html.EditorFor(customer => customer) %>

它将为客户名称生成一个文本输入,为 CoolDate 生成一个 MyCoolCalendar(这是一个自定义控件),而无需编写自定义控件来包装整个对象。它会自动从属性的类型/uihint 中推断出控件的类型。至少这是我在没有时间测试的情况下所理解的。

关于javascript - ASP.NET MVC 2 - 何时使用模板与何时使用局部 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1308294/

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