ASP.NETMVC。如何渲染没有模型的部分(如创建视图)
ASP.NET MVC. How render a Partial with no model (like create view)
我想像这样渲染局部:
@Html.Partial("_MyPartial")
但是我的部分确实需要一个类型化的对象,例如:MyPartial.cshtml :
@model MyApplication.Models.MyClass
(...)
但我想在我的视图 没有初始化模型的情况下呈现它,例如 "Create" 视图。
Create views is bound to a model, but is initialized empty.
我已经尝试过的:
@Html.Partial("_MyPartial")
主视图模型被传递给部分,它抛出一个不兼容的类型错误。
@Html.Partial("_MyPartial", null)
抛出同样的错误。
@Html.Partial("_MyPartial", new MyClass())
使用默认值初始化视图。我不想要预初始化视图。
在 "Create" 视图中,没有模型传递给视图,但视图绑定到模型。我想在 "create" 视图中呈现这个部分。它不得绑定到已初始化的模型实例。必须初始化为空。
尝试使用 html.renderaction 而不是部分 like this 并且不要为视图声明任何模型,如果它一开始真的不使用模型?
哦是的 return 动作中的局部视图 return 不要忘记 @ 符号后的大括号,这很重要
您已经编写代码以在视图中接受模型类型:
@model MyApplication.Models.MyClass
因此必须在视图中传递模型。
如果您不想使用模型,请删除接受模型的代码
当您想要 return 没有模型的局部视图时。使用这个。
@{ Html.RenderPartial("Your partial view") }
事实上,这是不可能的,因为partial从主视图中获取模型,如果没有它自己。
在这种情况下,您必须初始化部分调用并不仅将模型作为 null
传递,而且必须清理上下文中的整个数据。
我想像这样渲染局部:
@Html.Partial("_MyPartial")
但是我的部分确实需要一个类型化的对象,例如:MyPartial.cshtml :
@model MyApplication.Models.MyClass
(...)
但我想在我的视图 没有初始化模型的情况下呈现它,例如 "Create" 视图。
Create views is bound to a model, but is initialized empty.
我已经尝试过的:
@Html.Partial("_MyPartial")
主视图模型被传递给部分,它抛出一个不兼容的类型错误。
@Html.Partial("_MyPartial", null)
抛出同样的错误。
@Html.Partial("_MyPartial", new MyClass())
使用默认值初始化视图。我不想要预初始化视图。
在 "Create" 视图中,没有模型传递给视图,但视图绑定到模型。我想在 "create" 视图中呈现这个部分。它不得绑定到已初始化的模型实例。必须初始化为空。
尝试使用 html.renderaction 而不是部分 like this 并且不要为视图声明任何模型,如果它一开始真的不使用模型?
哦是的 return 动作中的局部视图 return 不要忘记 @ 符号后的大括号,这很重要
您已经编写代码以在视图中接受模型类型:
@model MyApplication.Models.MyClass
因此必须在视图中传递模型。
如果您不想使用模型,请删除接受模型的代码
当您想要 return 没有模型的局部视图时。使用这个。
@{ Html.RenderPartial("Your partial view") }
事实上,这是不可能的,因为partial从主视图中获取模型,如果没有它自己。
在这种情况下,您必须初始化部分调用并不仅将模型作为 null
传递,而且必须清理上下文中的整个数据。