/// <summary>
/// Build query string
/// </summary>
/// <returns>Ready query string</returns>
public string BuildQuery()
{
StringBuilder sb = new StringBuilder("http://api.vkontakte.ru/api.php?");
this.Add("v", "3.0");
// sorting params
List <KeyValuePair <string, string> > myList = new List <KeyValuePair <string, string> >(this.paramData);
myList.Sort(
delegate(KeyValuePair <string, string> keyfirst,
KeyValuePair <string, string> keylast)
{
return(keyfirst.Key.CompareTo(keylast.Key));
}
);
StringBuilder md5sig = new StringBuilder(this.session.MemberId);
foreach (KeyValuePair <string, string> rec in myList)
{
md5sig.Append(rec.Key + "=" + rec.Value);
sb.Append(rec.Key + "=" + rec.Value + "&");
}
md5sig.Append(this.session.Secret);
sb.Append("sig=" + CommonUtils.Md5(md5sig.ToString()).ToLower());
sb.Append("&sid=" + this.session.SessionId);
//sb.Append(
return(sb.ToString());//this.query;
}