我选择查询中的行数。我需要将它分配给一个int变量。我该如何做到这一点?
Display.aspx.cs
**int TotalYesVotes;**
Ratings GetYesVotes = new Ratings();
DataTable DATotalYesVotes = GetYesVotes.GetTotalYesVotes();
**//How do i assign that count to TotalYesVotes**
业务层
public DataTable GetTotalYesVotes()
{
DLRatings DlTotalyesVotes = new DLRatings();
return DlTotalyesVotes.GetTotalYesVotes();
}
我的数据层
public DataTable GetTotalNoVotes()
{
//get database connection string from config file
string strConectionString o= ConfigurationManager.AppSettings["DataBaseConnection"];
//set up sql
string StrSql = "SELECT COUNT(*) AS Expr1 FROM Ratings WHERE (PicRating = 2) AND (PicID = 2)";
DataTable dt = new DataTable();
using (SqlDataAdapter daObj = new SqlDataAdapter(StrSql, strConectionString))
{
//fill data table
daObj.Fill(dt);
}
return dt;
}
答案 0 :(得分:2)
您应该更改数据检索:
public int GetTotalNoVotes()
{
//get database connection string from config file
string strConectionString o= ConfigurationManager.AppSettings["DataBaseConnection"];
SqlConnection conn = new SqlConnection(strConnectionString);
conn.Open();
SqlCommand oCommand = new SqlCommand("SELECT COUNT(1) AS Expr1 FROM Ratings WHERE (PicRating = 2) AND (PicID = 2)", conn);
object oValue = oCommand.ExecuteScalar();
conn.Close();
if (oValue == DBNull.Value) {
return 0;
} else {
return Convert.ToInt32(oValue);
}
}