public static String AppendQueryString( this string url, Object parameters )
 {
     if(String.IsNullOrEmpty(url)) throw new ArgumentNullException("url", "url can't be empty");
     string query = parameters.ToQueryString();
     if(String.IsNullOrEmpty(query)) return url;
     StringBuilder builder = new StringBuilder();
     builder.Append(url);
     if(url[url.Length - 1] != '?') builder.Append('?');
     builder.Append(query);
     return builder.ToString();
 }