在 MVC 3 中,如何从局部视图访问模型?

发布于 2025-01-02 13:55:50 字数 327 浏览 0 评论 0原文

在我的应用程序中,我有两个视图,它们使用参数中给定的模型呈现相同的部分视图,如下所示:

在视图1中:

 @Html.Partial("_LayoutMyPartialView", new MyModel1())

在视图2中:

@Html.Partial("_LayoutMyPartialView", new MyModel2())

如何访问部分视图中的模型以处理数据?

更新

我的模型没有相同的结构。

In my application I have two views, that renders the same partial view with model given in parameter, like this:

In View1:

 @Html.Partial("_LayoutMyPartialView", new MyModel1())

In View2:

@Html.Partial("_LayoutMyPartialView", new MyModel2())

How can I access the model in the partial view to work with the data?

UPDATE

My models does not have the same structure.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

逆流 2025-01-09 13:55:50

您将使用 Model 关键字访问您的模型,以便:

Model.UserName

将为您提供对象的 UserName 属性。

确保您的部分视图也是强类型的:

@model MyModel1

You'll use the Model keyword to access your model such that:

Model.UserName

would give you the UserName property of the object.

Ensure that your partial view is strongly typed too:

@model MyModel1
我不会写诗 2025-01-09 13:55:50

你的要求似乎很不同。

但这里仍然是一个推荐的设计来实现你想要的(基于最初的问题)

  1. 拥有一个包含 Model1 和 Model2 实例的 ViewModel ,这样你就不必映射 2 个不同的对象。

    <块引用>

    公共类MyViewModel
    

    {
    公共 MyModel1 Model1Instance {获取;设置;}
    公共 MyModel2 Model2Instance {获取;设置;}
    }

只需在您的视图中使用此单个 ViewModel 标记 @model 即可。当您通过控制器传递对象时,这将使您可以访问部分中的两个模型。

Your requirement seems very different.

But still here is a recommended design to achieve what you want (Based on initial question)

  1. have a ViewModel that contains instances of Model1 and Model2 , that way you will save having to map 2 differnt objects.

    Public class MyViewModel
    

    {
    public MyModel1 Model1Instance {get;set;}
    public MyModel2 Model2Instance {get;set;}
    }

Later on just mark in your view @model with this single ViewModel. that will give you access to both the Models in your partial while you pass Objects thru controller.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文