2016-03-28 157 views
-2

MVCでSqlDataReaderを使用してRazorビューを使用してデータを表示する方法は? 私はこれを試しました。MVCでSqlDataReaderを使用して表示するデータを表示

コントローラー・コード: -

public ActionResult UserDetails(DashBoard dash) 
    {    
     using (var cn = new SqlConnection(ConfigurationManager.ConnectionStrings["DefaultConnection"].ConnectionString)) 
     { 
      String sql = "SELECT DU.UserRMN, MU.Name, DeptName, MgrID, TLeadID FROM Details_Users DU, Master_Users MU where DU.UserRMN=MU.UserRMN"; 
      SqlCommand cmd = new SqlCommand(sql, cn);   
      cn.Open(); 
      SqlDataReader rdr = cmd.ExecuteReader(); 
      List<DashBoard> model = new List<DashBoard>(); 
      while(rdr.Read()) 
      { 
       var details = new DashBoard(); 
       details.UserRMN = rdr["UserRMN"].ToString(); 
       details.Name = rdr["Name"].ToString(); 
       details.DeptID = rdr["DeptID"].ToString(); 
       details.MgrID = rdr["MgrID"].ToString(); 
       details.TLeadID = rdr["TLeadID"].ToString(); 
       model.Add(details); 
      } 
      return View(model); 
     } 
    } 
+3

あなたの質問は何ですか? –

答えて

0

ないあなたの質問があるが、ここで対応するビューにモデルオブジェクトを渡す方法が何であるかを確認してください。

あなたはモデルオブジェクトを渡した後、2番目の引数としてモデルオブジェクトを追加するにビュー名を追加することで、コントローラの戻りラインの一部を改正:

public ActionResult UserDetails(DashBoard dash) 
{ 

     using (var cn = new SqlConnection(ConfigurationManager.ConnectionStrings["DefaultConnection"].ConnectionString)) 
     { 
      String sql = "SELECT DU.UserRMN, MU.Name, DeptName, MgrID, TLeadID FROM Details_Users DU, Master_Users MU where DU.UserRMN=MU.UserRMN"; 
      SqlCommand cmd = new SqlCommand(sql, cn);   
      cn.Open(); 
      SqlDataReader rdr = cmd.ExecuteReader(); 
      List<DashBoard> model = new List<DashBoard>(); 
      while(rdr.Read()) 
      { 
       var details = new DashBoard(); 
       details.UserRMN = rdr["UserRMN"].ToString(); 
       details.Name = rdr["Name"].ToString(); 
       details.DeptID = rdr["DeptID"].ToString(); 
       details.MgrID = rdr["MgrID"].ToString(); 
       details.TLeadID = rdr["TLeadID"].ToString(); 
       model.Add(details); 
      } 
      return View("ViewName", model); 
     } 

あなたのビューは次のようになります。

 @model IEnumerable<Models.DashBoard> 
     @{ 
      ViewBag.Title = "Dashboard"; 
     } 

     <h2>Dashboard</h2> 

     @foreach(var item in Model){ 
      <div> 
       <li> 
        @item.Name 
       </li> 
       <li> 
        @item.DeptID 
       </li> 
       .... 
      </div> 
     } 
関連する問題