0

我会寻求一些与我的问题相关的帮助。

我需要根据公式在 C# 中计算:

(Ra,p -RavgA) 其中:

  1. Ra,p 是“用户 a 对项目 p 的评分”和
  2. RavgA 是“用户的平均评分”

为了达到数据“用户对项目 p 的评价”,我正在使用 SQL 存储过程:

SELECT     Ocjena_ID

从 OcjeneKorisnika 哪里 (Korisnik_ID = @Korisnik_ID)

例如,这个存储过程为我提供了 "Ocjena_ID" 的值:

  1. 4
  2. 5
  3. 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,

达米尔

4

0 回答 0