如何在asp.net mvc3中将Id从父级传递到局部视图?

use*_*007 5 razor asp.net-mvc-3

我试图将ID从页面传递到嵌入式partialView,我该如何传递?就像是?:

@Render.Partial("MyControl",@Model.ID)
Run Code Online (Sandbox Code Playgroud)

我如何在局部视图中阅读此ID?:

@model PartialViewModel

@myid = IdFromParent
Run Code Online (Sandbox Code Playgroud)

Ale*_*ore 7

将变量作为第二个参数传递给Partial()方法时,它将成为您调用的部分的模型.在这种情况下,您将ID作为整个模型传递,因此您只需使用@Model获取ID:

@*Page View*@
@model MyModel
...
@Render.Partial("MyControl",@Model.ID)
Run Code Online (Sandbox Code Playgroud)

.

@* MyControl Partial View *@
@model int

@myid = @Model
Run Code Online (Sandbox Code Playgroud)

如果要将PartialViewModel类型传递给partial,则必须将其作为Parent ViewModel(第一个示例中的模型)的属性提供,或者通过ViewData或ViewBag容器提供.