2016-03-28 29 views
-2

MVC'de SqlDataReader kullanarak Razor görünümünü kullanarak veri nasıl görüntülenir? Böyle bir şey denedim.Verileri MVC'de SqlDataReader Kullanarak Gösterme

Kontrolör kodu: -

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

Peki sorunuz nedir? –

cevap

0

emin değil Sorunuz burada ama görünümü tekabül için model nesneyi nasıl geçirileceği ne.

modeli nesnesini geçmek ve daha sonra ikinci argüman olarak modeli nesnesi eklemek istediğiniz için görünüm adını ekleyerek kontrolörün dönüş hattını Amend:

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); 
     } 

Kişisel Görünüm şu şekilde görünecektir olmalı:

 @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> 
     }