加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

asp.net-mvc – ASP.NET MVC:如何使用模型呈现不同的操作(不是

发布时间:2020-12-16 07:35:48 所属栏目:asp.Net 来源:网络整理
导读:从Controller返回不同的视图非常容易: return View("../Home/Info"); 但是,我需要在Info视图中使用一个模型.我在Info()动作结果方法中有很多东西.我可以复制它,并有这样的事情: var infoModel = new InfoModel { // ... a lot of copied code here}return
从Controller返回不同的视图非常容易:

return View("../Home/Info");

但是,我需要在Info视图中使用一个模型.我在Info()动作结果方法中有很多东西.我可以复制它,并有这样的事情:

var infoModel = new InfoModel {
    // ... a lot of copied code here
}
return View("../Home/Info",infoModel);

但那是不合理的.

当然我可以重定向:

return RedirecToAction("Info");

但这样URL就会改变.我不想更改URL.这非常重要.

解决方法

看起来您想要从不同的控制器调用操作.我建议您可能只想渲染一个视图,使用 Html.Action()渲染该操作,而不是尝试将两者绑定在控制器中.如果这是不合理的,那么您可能想要创建一个基本控制器,两个控制器都可以从中派生并放置共享代码以在基本控制器中生成模型.根据需要重用视图.

public ActionResult Foo()
  {
      return View();
  }

Foo View

@Html.Action( "info","home" )

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读