Для облегчения своей (и вашей теперь) жизни написал класс, который поможет сформировать облако тегов. Код для ASP.NET 2.0.
Чем он отличается от остальных «Tag cloud maker»-ов? Почти все готовые компоненты, какие я видел, требуют чтобы в них присылали данные вида тег-вес, тоесть нужно было сначала самому посчитать сколько раз повторяется один и тот же тег, и только потом отправлять эти данные в контрол. Вобщем, ерунда. В мой класс вы просто отправляете всю кучу тегов сразу, а на выходе получаете красивое облачко тегов. Вид можно настроить через CSS.
Как пользоваться: скопировать класс PortalTagCloud.cs в App_Code\, файл Cloud.css куда вам нужно.
На ASPX странице разместить Label1.
В коде: сформировать из базы данных, или из XML (или где вы там храните свои данные) string, в котором через запятую идут подряд все теги (неотсортированные, повторяющие, просто «как есть»), отправить эти данные в PortalClass.MakeCloud() и получить готовое облако тегов.
Вот более подробный пример кода:
string GetAllTags()
{ /// Забираем все теги
SqlConnection SQLDB;
SqlCommand SQLDBCMD;
SqlDataReader SqlR;
System.Text.StringBuilder sb = new System.Text.StringBuilder();
SQLDB = new SqlConnection(System.Configuration.ConfigurationManager.ConnectionStrings["ConnectionString"].ConnectionString);
SQLDBCMD = new SqlCommand("SELECT post_tags FROM w20_posts", SQLDB);
SQLDB.Open();
SqlR = SQLDBCMD.ExecuteReader();
while (SqlR.Read())
{
sb.Append(SqlR["post_tags"]+",");
}
SqlR.Close();
SQLDB.Close();
return sb.ToString();
}
protected void Page_Load(object sender, EventArgs e)
{
lblCloud.Text = PortalTagCloud.MakeCloud(GetAllTags(),"/portal/tag.aspx?s=");
}
Меня зовут Адель Шигабутдинов, этот блог я использую для записок самому себе. 
Дмитрий
/ 03.09.2011Классное облако спасибо. А как вы считаете оно должно индексироваться поисковиками или лучше его закрыть от индексации?