我正在开发一个用ASP.NET开发的网站,后端是C#。我正在动态尝试将值从数据库传递到标头。我只需执行<%: Context.User.Identity.GetUserName() %>
即可为用户名执行此操作,并返回正确的用户名。我如何为课程名称做这个?
下面是我的代码,它读取数据库中的值
public DataTable GetCourseData()
{
string UsrName = User.Identity.Name;
DataSet dt = new DataSet();
using (SqlConnection connection = new SqlConnection(Common.ConnectionString))
{
using (SqlCommand cmd = new SqlCommand("SELECT CourseName FROM Course WHERE UserName=@UserName"))
{
using (SqlDataAdapter sda = new SqlDataAdapter())
{
SqlParameter para2 = new SqlParameter("UserName", UsrName);
cmd.Parameters.Add(para2);
cmd.Connection = connection;
sda.SelectCommand = cmd;
sda.Fill(dt);
}
}
}
return dt.Tables[0];
}
如果我<%: GetCourseData() %>
它没有返回课程。
非常感谢任何帮助!
答案 0 :(得分:1)
您遇到的问题是返回DataTable
,其中描述了包含查询结果的整个表格。您可能希望从中获取所需的数据,如下所示:
return dt.Tables[0].Rows[0]["CourseName"];