gpt4 book ai didi

asp.net-mvc-3 - 使用 Html.EditorFor 为新记录创建空白

转载 作者:行者123 更新时间:2023-12-02 03:47:10 26 4
gpt4 key购买 nike

使用 EditorFor 模板是 ASP.Net MVC 3 的一个非常好的功能,但是是否可以让 EditorFor 呈现未填充的模板以允许创建记录?

或者还有其他方法可以做到这一点吗?

我尝试执行此操作的方法如下:

    @Html.EditorFor(model => model)
@Html.EditorFor(x => new List<Business.ViewModel.Affiliate.Contact>())
@Html.EditorFor(new List<Business.ViewModel.Affiliate.Contact>())
@Html.EditorFor(new Business.ViewModel.Affiliate.Contact())

第一个显然有效,但是后续的(演示我正在尝试做的事情)都失败并出现以下错误:

    Templates can be used only with field access, property access, single-dimension array index, or single-parameter custom indexer expressions.

有问题的模型是:

    IEnumerable<Business.ViewModel.Affiliate.Contact>

最佳答案

Controller 负责准备将传递给 View 的 View 模型。因此,如果您需要使用 5 个空联系人行初始化 View View 模型,您可以在 Controller 中简单地执行此操作:

public ActionResult Index()
{
var model = new MyViewModel
{
// Add 5 empty contacts
Contacts = Enumerable.Range(1, 5).Select(x => new Contact()).ToList()
};
return View(model);
}

在您看来,像往常一样使用 EditorFor 助手:

@model MyViewModel
...
@Html.EditorFor(x => x.Contacts)

这将为我们添加到 Contacts 集合的 5 个元素中的每一个呈现相应的编辑器模板。

关于asp.net-mvc-3 - 使用 Html.EditorFor 为新记录创建空白,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9454038/

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