2013-12-17 41 views
1

我現在有被傳遞狗變量到視圖模型:ASP.NET MVC - 將多個變量傳遞給模型?

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,而是參考類別列表中的結果結果?

即我需要基於匹配dogs.OutcomeIDresult["id"]

對不起得到result["Outcome"]如果這聽起來像一個愚蠢的問題,在PHP中,這不會是我的一個問題,但我非常新的ASP。 NET MVC和我不知道從哪裏開始

謝謝

回答

4

您可以創建一個視圖模型是在ASP.NET MVC的普遍做法,基本上你必須創建具有屬性的新類你需要傳遞給你的看法,然後在你的控制器中,你會發送v的例子將模型轉換爲視圖並將數據轉換爲視圖模型。

看看這裏ASP.NET MVC - How exactly to use View Models。你也可以看看automapper,這是一個映射庫,它消除了處理視圖模型時涉及的很多樣板代碼。

+0

謝謝:)我現在就去看看吧! – Nick

相關問題