C# ASP.NET MVC动态绑定编辑器模板

C# ASP.NET MVC动态绑定编辑器模板,c#,asp.net-mvc,model-binding,mvc-editor-templates,dynamic-binding,C#,Asp.net Mvc,Model Binding,Mvc Editor Templates,Dynamic Binding,例如,在单击按钮后,是否可以将编辑器模板动态添加到我的视图中 目前,我正在主视图中执行此操作,以将ObjectA对象列表绑定到我的模型(在表单中): 在编辑器模板中,我绑定了ObjectA的属性: @Html.DisplayFor(x => x.ID) @Html.CheckBoxFor(x => x.BoolA) 但是如果我不想总是加载这个编辑器模板,有没有一种方法可以使用JS将其动态绑定到模型 这是因为它向数据库发出了一个额外的请求,我可以通过允许用户选择是否发出请求而忽略该请

例如,在单击按钮后,是否可以将编辑器模板动态添加到我的视图中

目前,我正在主视图中执行此操作,以将
ObjectA
对象列表绑定到我的模型(在表单中):

在编辑器模板中,我绑定了
ObjectA
的属性:

@Html.DisplayFor(x => x.ID)
@Html.CheckBoxFor(x => x.BoolA)
但是如果我不想总是加载这个编辑器模板,有没有一种方法可以使用JS将其动态绑定到模型

这是因为它向数据库发出了一个额外的请求,我可以通过允许用户选择是否发出请求而忽略该请求


这可能吗

您不能在客户端使用
EditorFor
来实现这一点,因为razor在服务器端是以html格式转换的

如果使用
PartialView
,您可以在其中包含
编辑器for

您对此
PartialView
进行了一次调用,但在
axaj
调用中,您必须指定id以在操作中查询该对象


最后,您将在页面中附加调用的结果html内容。

所以您的意思是拥有一个我有EditorFor的部分视图。但是,您认为这样做会绑定到模型吗?我不会有前缀问题吗?我试过了,但它没有绑定到模型(显然)。我决定在我的模型中添加一个额外的布尔值,检查它是否应该发出请求。当用户单击按钮时,它会使用更新的模型刷新页面,该模型决定是否根据用户的请求显示更多数据choice@sparta223您试图使
@Html.EditorFor(x=>x.ObjectA)
@Html.EditorFor(x=>x)
?我制作了一个局部视图,其中只有@Html.EditorForModel()使用ObjectA作为model@sparta223这就是为什么没有绑定的原因,您需要一个具有属性
ObjectA
的空模型,并使用
@Html.EditorFor(x=>x.ObjectA)
@Html.DisplayFor(x => x.ID)
@Html.CheckBoxFor(x => x.BoolA)