2017-02-20 9 views
0

КонтрактКак передать параметр, который будет десериализоваться как json в службе поддержки WCF?

[OperationContract] 
[WebGet(UriTemplate = "Filter/{paramName:paramValue}/"), 
RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json)] 
string[] Filter(string paramNameAndparamValue); 

Реализация

public string Filter(string paramNameAndparamValue) 
{ 
    string[] tmp = paramNameAndparamValue.split(':'); 

    // do something ... 
} 

Есть ли почему передать эту успокоительной методе параметра, который будет использовать в качестве объекта JSon и избежать использования string.split?

+0

Пометьте параметр, как массив типа 'Filter (строка [] paramNameAndparamValue) '? Обратите внимание, что ваш контракт и ваша реализация различаются по их типам возврата. –

+0

и в этом случае - как я пройду этот параметр на спокойном? как пройти 2 строки? – Yanshof

+0

Как написать строку [WebGet (UriTemplate = "Filter/{paramName: paramValue} /"), , если я буду использовать строку [] – Yanshof

ответ

1

Вы можете попробовать как ниже

Iservice.cs

[OperationContract] 
[WebGet(UriTemplate = "Filter/{paramName}/{paramValue}"), 
RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json)] 
string[] Filter(string paramName,string paramValue); 

сервис .cs

public string[] Filter(string paramName,string paramValue); 
{ 
    //your code; 
} 
Смежные вопросы