我会寻求一些与我的问题相关的帮助。
我需要根据公式在 C# 中计算:
(Ra,p -RavgA) 其中:
- Ra,p 是“用户 a 对项目 p 的评分”和
- RavgA 是“用户的平均评分”
为了达到数据“用户对项目 p 的评价”,我正在使用 SQL 存储过程:
SELECT Ocjena_ID
从 OcjeneKorisnika 哪里 (Korisnik_ID = @Korisnik_ID)
例如,这个存储过程为我提供了 "Ocjena_ID" 的值:
- 4
- 5
- 5
要在 C# 中填充列表,在 DBBL 中我定义了:
public List<SelectOcjeneZaDoSadaOcjenjeneArtikleSP_Result> SelectOcjeneZaDoSadaOcjenjeneArtikleSP(int Korisnik_ID)
{
return context.SelectOcjeneZaDoSadaOcjenjeneArtikleSP(Korisnik_ID).ToList();
}
为了计算“用户的平均评分”,我在 CB 中使用:
string connectionString = "Data Source=localhost;Initial Catalog=OnLineTeaShop;Trusted_Connection=True;";
using (SqlConnection conn = new SqlConnection(connectionString))
{
using (SqlCommand cmd = new SqlCommand("dbo.AVG_Evaluation_for_CustomerV2SP"))
{
cmd.CommandType = CommandType.StoredProcedure;
cmd.Parameters.Add(new SqlParameter("@Korisnik_ID", Convert.ToInt32(Session["UserID"])));
SqlParameter countParameter = new SqlParameter("@retAVGVal", SqlDbType.Float);
countParameter.Direction = ParameterDirection.Output;
cmd.Parameters.Add(countParameter);
conn.Open();
cmd.Connection = conn;
cmd.ExecuteNonQuery();
string SrednjaVrijednost = cmd.Parameters["@retAVGVal"].Value.ToString();
txtAktvniAVG.Text = SrednjaVrijednost;
conn.Close();
}
}
这段代码给了我 txtAktivniAVG 字段值 4,67。
问题是如何从 CB 文件中的列表中获取数据并计算列表中每个项目的乘法值,达到“用户平均评分”的值,并创建/填充需要 1 行和 i (在本例中为 3)列的矩阵用那些数据?
预先感谢您的支持。
BR,
达米尔