gpt4 book ai didi

c# - 强类型 View 数据

转载 作者:太空宇宙 更新时间:2023-11-03 14:37:34 25 4
gpt4 key购买 nike

我创建了一个强类型的LocationViewData,其属性如下

public Location location { get; set; }

Location 本身是模型,具有 AddressCountry 等属性。

在我的 Controller 中:

public ActionResult Edit(int id)
{
LocationViewData ld = new LocationViewData();
...
return View(ld);
}

在我的 View 代码隐藏中:

public partial class Edit : ViewPage<MvcTest.Models.LocationViewData>
{
}

我的问题是:如何让 ViewData 中的 Location 模型的属性显示在适当的文本框中,例如:

<%=Html.TextBox("address") %>

我不想用全名指定每个字段:

<%=Html.TextBox("address", ViewData.Model.location.address) %>

最佳答案

它已经完全像那样工作了。启动一个新的 MVC (beta 1) 项目,并将其放入“Home” Controller 的“Index”操作中:

public class HomeController : Controller
{
public ActionResult Index()
{
this.ViewData.Model = new MyObject
{
Name = "Timmy",
FavColor = "Blue",
};

return View();
}

public class MyObject
{
public string Name { get; set; }

public string FavColor { get; set; }
}
}

现在,将其放入 View 中:

<%=Html.TextBox("FavColor") %>

它会在里面说“蓝色”。它已经尝试通过名称进行绑定(bind)(MVC 检查了几个地方,其中之一是“模型”)。

编辑:您需要做的是:

  1. 确保“location”是一个属性,“address”是一个属性。

  2. 将“location.address”作为名称...而不仅仅是“address”。

关于c# - 强类型 View 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/325513/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com