【问题标题】:Asp.net Dictionary - Replace hard coded values with database valuesAsp.net Dictionary - 用数据库值替换硬编码值
【发布时间】:2010-05-27 14:09:47
【问题描述】:

我正在尝试实现这个标签云: http://thetagcloud.codeplex.com/

...我需要将下面的硬编码值替换为来自我的数据库的值吗?

    <%= new TagCloud(   new Dictionary<string, int> {
                        {"C#", 58},
                        {"ASP.NET", 45},
                        {"VB.NET", 36},
                        {"AJAX", 24},
                        {"LINQ", 13}
                    },
                    new TagCloudGenerationRules
                    {
                        TagToolTipFormatString = "Tag weight: {0}",
                        TagUrlFormatString = "search.aspx?p=1&tag={0}"
                    }) %>

我创建了以下 sql 字符串,它以预期的字符串/int 或 value/key 格式返回数据

SELECT Tag, COUNT(Tag) AS Counter
FROM         dbo.CtagCloud
GROUP BY Tag
HAVING      (COUNT(Tag) > 3)
ORDER BY Counter DESC

【问题讨论】:

  • 你能把你的数据访问代码贴出来吗?
  • 我认为您需要修改您的查询,以便除了标签名称和计数之外,它还返回与标签关联的 id (58,45,36,24,13)。
  • 嗨,我在下面添加了我的数据访问代码。谢谢

标签: c# asp.net dictionary


【解决方案1】:

这是我的数据访问代码

 // SQL Select Command
    SqlConnection conn = new SqlConnection(connectionString);
    SqlCommand mySqlSelect = new SqlCommand("SELECT TOP (100) PERCENT Tag, COUNT(Tag) AS Counter FROM dbo.CtagCloud GROUP BY Tag HAVING (COUNT(Tag) > 3) ORDER BY Counter DESC", conn);
    mySqlSelect.CommandType = CommandType.Text;
    SqlDataAdapter mySqlAdapter = new SqlDataAdapter(mySqlSelect);
    DataSet myDataSet = new DataSet();
    mySqlAdapter.Fill(myDataSet);

    // create an instance for ArrayList
    ArrayList myArrayList = new ArrayList();

    // foreach loop to read each DataRow of DataTable stored inside the DataSet
    foreach (DataRow dRow in myDataSet.Tables[0].Rows)
    {
        // add DataRow object to ArrayList
        myArrayList.Add(dRow);
    }

【讨论】:

    【解决方案2】:

    嗯,我已经超级简短地看了一眼,只是对那个示例代码感兴趣。我怀疑你需要传入一个数组(值对)而不是字符串。

    只需遍历返回的每条记录并将其添加到数组中。然后将该数组传递给 TagCloud 对象。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-07-04
      • 2018-12-11
      • 1970-01-01
      • 1970-01-01
      • 2021-01-02
      • 1970-01-01
      • 2014-11-28
      • 1970-01-01
      相关资源
      最近更新 更多