private string FormatKey()
 {
     var namedKeyValues = this.KeyValues;
     var valueFormatter = new ValueFormatter();
     var formattedKeyValues = namedKeyValues.Count == 1 ?
         valueFormatter.Format(namedKeyValues.Values) :
         valueFormatter.Format(namedKeyValues);
     return "(" + formattedKeyValues + ")";
 }
예제 #2
0
 public IEnumerable<IEnumerable<IEnumerable<KeyValuePair<string, object>>>> ExecuteFunction(string functionName, IDictionary<string, object> parameters)
 {
     var function = _schema.FindFunction(functionName);
     var formattedParameters = new ValueFormatter().Format(parameters, "&");
     var commandText = function.ActualName + "?" + formattedParameters;
     var command = new HttpCommand(function.HttpMethod.ToUpper(), commandText.ToString());
     _requestBuilder.AddCommandToRequest(command);
     return _requestRunner.ExecuteFunction(command);
 }
예제 #3
0
 private string FormatGetKeyCommand(string tableName, IDictionary<string, object> entryKey)
 {
     var keyNames = _schema.FindTable(tableName).GetKeyNames();
     var keyValues = new List<object>();
     foreach (var keyName in keyNames)
     {
         object keyValue;
         if (entryKey.TryGetValue(keyName, out keyValue))
         {
             keyValues.Add(keyValue);
         }
     }
     var formattedKeyValues = new ValueFormatter().Format(keyValues);
     return GetTableActualName(tableName) + "(" + formattedKeyValues + ")";
 }
예제 #4
0
 private string FormatKeyValues(string tablePath, IList<object> keyValues)
 {
     var valueFormatter = new ValueFormatter();
     string formattedKeyValues;
     if (keyValues.Count == 1)
     {
         formattedKeyValues = valueFormatter.Format(keyValues);
     }
     else
     {
         var tableName = ExtractTableNames(tablePath).First();
         var keyNames = _getKeyNames(tableName);
         var namedKeyValues = new Dictionary<string, object>();
         for (int index = 0; index < keyNames.Count(); index++)
         {
             namedKeyValues.Add(keyNames[index], keyValues[index]);
         }
         formattedKeyValues = valueFormatter.Format(namedKeyValues);
     }
     return "(" + HttpUtility.UrlEncode(formattedKeyValues) + ")";
 }