Just a note for myself to calculate the average score in a method called "selectSQLQuery(,)" that fills a Dictionary with a unique key and value for the ajaxcontroltoolkit star rating control.
GeSHi (csharp):
Dictionary<int, decimal> averageScore =
new Dictionary<int, decimal>
();
Created by GeSHI 1.0.7.20
Adding unique keys
GeSHi (csharp):
if (!averageScore.ContainsKey(int.Parse(cb.ID)))
{
averageScore .Add(int.Parse(cb.ID), v.selectSQLQuery(int.Parse(Session["some_ID"].ToString()),
}
Created by GeSHI 1.0.7.20
Get the average score for the ajaxcontroltoolkit star rating
GeSHi (csharp):
cb.CurrentRating = (int) averageScore [int.Parse(cb.ID)];
Created by GeSHI 1.0.7.20
Method that returns the average score from the result of a query in an SQL database.
GeSHi (csharp):
public decimal selectSQLQuery( int someInt, int someInt2)
{
string sqlQuery = "";
SqlCommand cmd =
new SqlCommand
(sqlQuery, conn
);
cmd.Parameters.Add("@aParameter", SqlDbType.Int);
cmd.Parameters.Add("@anotherParameter", SqlDbType.Int);
cmd.Parameters["@aParameter"].Value = someInt;
cmd.Parameters["@anotherParameter"].Value = someInt2;
decimal getScoreFromAllUsers = 0.0m;
int reviewedByPeople = 0;
try
{
conn.Open();
// cmd.ExecuteNonQuery();
a =
new SqlDataAdapter
(cmd
);
a.Fill(s);
conn.Close();
foreach (DataRow dr in s.Tables[0].Rows)
{
getScoreFromAllUsers += (decimal)dr["Score"];
reviewedByPeople += 1;
}
}
catch (Exception e)
{
System.Diagnostics.Debug.Write(e.Message);
}
getScoreFromAllUsers = getScoreFromAllUsers / reviewedByPeople;
return getScoreFromAllUsers;
}
Created by GeSHI 1.0.7.20
Note that my method returns a decimal but i cast it to an int because the ajaxcontroltoolkit star rating only works with an integer. I still need to change the ajaxcontroltoolkit star rating so that it supports decimal values but it works as intended.