private static NSString OK_QueryStringWithSignature(this NSDictionary self, NSString secretKey, NSString sigName) { var sigSource = new NSMutableString(); var queryString = new NSMutableString(); var sortedKeys = self.Keys.OrderBy((NSObject arg) => arg); foreach (var key in sortedKeys) { var @value = self[key] as NSString; sigSource.Append(NSString.LocalizedFormat(@"%@=%@\", key, value)); queryString.Append(NSString.LocalizedFormat(@"%@=%@&", key, value.OK_Encode())); } sigSource.Append(secretKey); queryString.Append(NSString.LocalizedFormat(@"%@=%@&", sigName, sigSource.OK_MD5())); return(queryString); }