MVC如何使用参数返回视图
目前我有一个可行的方法,它在点击Razor中的代码链接时正在工作:
@Html.ActionLink("New User ,Register", "Register", new { OpenID = Model.OpenID })
我想从控制器返回视图具有相同的效果,此时我正在使用此代码但没有成功
return View("Register", lm);
我在MVC很新,所以我有点困惑。 返回的视图与我的上一个代码未命中smt并且我支持与new { OpenID = Model.OpenID }
的部分new { OpenID = Model.OpenID }
你能指出我正确的方向吗?
这是我的控制器的方法:
public ActionResult Register(string OpenID)
尽量避免使用 ViewData
和ViewBag
。 尝试使用强类型的ViewModels
。 这使你的代码干净( 下一个开发人员将维护你的代码,HAPPY )
在ViewModel
有一个名为OpenID
的属性
public class RegisterViewModel { //Other Properties also public string OpenID { set; get; } }
现在,您可以在action
方法中返回视图时设置此值:
public ActionResult Register(string OpenId) { var vm = new RegisterViewModel(); vm.OpenID = OpenId; return View(vm); }
您可以将所需的任何数据添加到ViewBag变量中。
在您的控制器中,您可以设置值。
调节器
public ActionResult Register() { ViewBag.OpenID = OpenID; return View() }
在剃刀视图中,您可以以相同的方式访问它
MVC3 Razor View
@ViewBag.OpenID
请看一下这个视图(ViewA):
@Html.ActionLink("My link", "ViewB", new { someData = "some data I'm passing on" })
而这两个动作:
public ActionResult ViewA() { return View(); } public ActionResult ViewB(string someData) { //Here someData has the value "some data I'm passing on" return View(); }
我们只是通过get传递值(即查询字符串)。 通过匹配名称,MVC能够为我们做魔术=)
希望这可以帮助。
问候
上述就是C#学习教程:MVC如何使用参数返回视图分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/1002070.html