我目前有一个模型正在将 dogs 变量传递到 View 中:
public ActionResult Summary()
{
var dogs = repository.GetAllRecords().OrderByDescending(x => x.DateRecieved);
return View("Summary", dogs);
}
其中有一个名为 OutcomeID 的字段,它通过 ID 引用另一个数组:
var categories = new List<Category>();
try
{
this.Connect();
var cmd = new SqlCommand
{
CommandText = "dbo.GetSummaryOutcomes",
CommandType = CommandType.StoredProcedure,
Connection = this.cn
};
var result = cmd.ExecuteReader();
while (result.Read())
{
categories.Add(new Category
{
Name = result["Outcome"].ToString(),
Value = result["id"].ToString(),
InUse = bool.Parse(result["InUse"].ToString())
});
}
}
在我看来,是否可以将这些结合起来,而不是仅仅使用 OutcomeID,而是从类别列表中引用 Outcome 结果?
即我需要得到 result["Outcome"]
基于匹配dogs.OutcomeID
至 result["id"]
抱歉,如果这听起来像一个愚蠢的问题,在 PHP 中这对我来说不是问题,但我是 ASP.NET MVC 的新手,我不知道从哪里开始
谢谢
最佳答案
您可以创建一个 View 模型,这是 ASP.NET MVC 中的常见做法,基本上您必须创建一个新类,其中包含您需要传递给 View 的属性,然后在您的 Controller 中发送 View 模型的实例到您的 View ,并将您的数据转换为 View 模型。
看这里ASP.NET MVC - How exactly to use View Models .您也可能想看看 automapper ,这是一个映射库,它删除了处理 View 模型时涉及的大量样板代码。
关于c# - ASP.NET MVC - 将多个变量传递给模型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20640553/