更新时间:2023-12-04 21:50:10
尽量避免 ViewData的
和 ViewBag
。尝试使用强类型的ViewModels。这使得你的code干净(和下一个开发谁是要去维护您的code,HAPPY)
有的OpenID
中称为属性的视图模型
公共类RegisterViewModel
{
//其他属性也
公共字符串的OpenID {集;获取;}
}
现在你可以返回视图时,在你的操作设置这个值
法
公众的ActionResult寄存器(串的OpenID)
{
VAR VM =新RegisterViewModel();
vm.OpenID =的OpenID;
返回查看(VM);
}
At the moment I have a Method that work, it is working when clicking a link here the code in Razor:
@Html.ActionLink("New User ,Register", "Register", new { OpenID = Model.OpenID })
I would like have the same effect with but returning the View from the Controller, at the moment I'm using this code with no success
return View("Register", lm);
I'm pretty new at MVC so I'm a bit confused. The view returned with my last code miss smt and I support is connected with the part new { OpenID = Model.OpenID }
Could you point me out in the right direction?
This how it is the method for my controller:
public ActionResult Register(string OpenID)
Try to avoid ViewData
and ViewBag
. try to use strongly typed ViewModels. That makes your code clean ( and the next developer who is gonna maintain your code, HAPPY)
Have a Property called OpenID
in your ViewModel
public class RegisterViewModel
{
//Other Properties also
public string OpenID { set;get;}
}
Now you can set this value when returning the view, in your action
method
public ActionResult Register(string OpenId)
{
var vm=new RegisterViewModel();
vm.OpenID=OpenId;
return View(vm);
}