Asp.net mvc 使用变量的MVC4渲染项?
我是MVC新手,在我看来:Asp.net mvc 使用变量的MVC4渲染项?,asp.net-mvc,asp.net-mvc-4,Asp.net Mvc,Asp.net Mvc 4,我是MVC新手,在我看来: @{ MyObjectType myNameObject=getMyNameObject(); } <p> Name : @myNameObject.firstName </p> 当行名:@myNameObject.firstName通过模型或ViewBag来自数据库,并且仍然拾取@myNameObject.firstName的值时,尝试实现设计。可能吗? 谢谢您的控制器操作方法应该获取数据并将其传递给视图。使用ViewMo
@{
MyObjectType myNameObject=getMyNameObject();
}
<p>
Name : @myNameObject.firstName
</p>
当行名:@myNameObject.firstName通过模型或ViewBag来自数据库,并且仍然拾取@myNameObject.firstName的值时,尝试实现设计。可能吗?
谢谢您的控制器操作方法应该获取数据并将其传递给视图。使用ViewModel通常是一种方法,但ViewBag也适用于一次性数据。大概是这样的:
// View model.
public class MyViewModel
{
public string Name {get; set;}
}
// Controller method.
public ActionResult MyPage()
{
MyViewModel model = serviceLayer.GetMyData();
return View(model);
}
// MyPage View.
@model MyViewModel
<p>Name: @Model.Name</p>
您的型号:
public class MyNameObject
{
public MyNameObject()
{
//getvalues from database
//this.FirstName = yourObjectFromDatabase.FirstName;
}
public string FirstName { get; set; }
}
在要显示名字的视图中:
@using WebApplication1.Models; //put it at the top of the view
@{ Html.RenderPartial("FirstName", new MyNameObject()); }
你的看法:
@model WebApplication1.Models.MyNameObject
@{
ViewBag.Title = "FirstName";
}
<h2>Name : @Model.FirstName</h2>
这是可能的。从controllerI将其作为模型的一部分传递我尝试使用模型,我得到的名称:@myNameObject.firstName呈现,而不是名称:John。模型的item=Name:@myNameObject.firstName我需要Name:@myNameObject.firstName在另一个视图中由用户编辑,这意味着用户可以看到Name:并能够将其更改为First Name:例如。而行名:@myNameObject.firstName应该来自数据库,进入这两个视图,所以如果它将被更改,那么两个视图都将反映它。