Viv*_*dey -2 c# asp.net-mvc sqldatareader razor
如何在MVC中使用SqlDataReader使用Razor视图显示数据?我已经尝试过这样的事情。
控制器代码:-
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);
}
}
Run Code Online (Sandbox Code Playgroud)
小智 5
不确定您的问题是什么,但是这里是如何将模型对象传递到相应的视图。
通过添加要向其传递模型对象的视图名称来修改控制器的返回行,然后作为第二个参数添加模型对象:
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);
}
Run Code Online (Sandbox Code Playgroud)
您的视图应如下所示:
@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>
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
6026 次 |
最近记录: |