2014-10-08 4 views
0

Я новичок в WCF, и я пытаюсь вызвать метод с использованием тестового клиента WCF. Подпись метода выглядит следующим образом.Invoke method using WcfTestClient

void AddToRole(String roleName, IEnumerable<RoleMemberInfo> UserOrGroups) 

Я не уверен, что передать как значение для второго параметра при вызове с помощью WcfTestClient. Можно ли даже вызывать его из TestClient?

Я имею в виду, простые внутренние типы являются прямыми - просто передайте некоторое значение. Но типы классов или более сложные типы, как я могу передать «экземпляр» таких типов, как параметр для клиента?

Является ли мой вариант ограниченным выполнением тестового клиента?

public class RoleMemberInfo 
{ 
    [DataMember] 
    public String UserOrGroupId { get; set; } 

    [DataMember] 
    public String DirectoryService { get; set; } 
} 
+0

Вы «знаете» класс RoleMemberInfo? У вас есть метаданные? Метод кажется мне довольно простым. Передайте String и IEnumerable из RoleMemberInfo ... Вы должны знать больше о контексте метода. –

+0

Обновили сообщение классом roleMemberInfo. Это мой первый раз, используя инструмент для более сложных типов. Я все еще не уверен, что и как передать что-то в качестве второго параметра в WcfTestClient. –

+0

После долгих поисков я столкнулся с этим. Его просто, как только вы знаете, как это сделать. До тех пор вы в значительной степени невежественны. Дизайнеры этого инструмента явно не знакомы с подсказками! http://stackoverflow.com/questions/1788214/how-to-specify-list-parameters-in-wcf-test-client-wcftestclient-exe –

ответ

-1

Что-то вроде этого:

public void UseWCFMethod() 
{ 
    String roleName = "Admin"; 

    RoleMemberInfo info = new RoleMemberInfo(); 
    info.UserOrGroupId = "1"; 
    info.DirectoryService = "Default"; 

    wcfProxy.AddToRole(roleName, info); 
} 

Я только что определили некоторые случайные значения переменных. Я предполагаю, что вы знаете значение этих переменных в их контексте. Позвольте мне изложить это так, вы знаете, какую услугу вы потребляете и какую функциональность у нее есть, что она делает, откуда она взялась, кто ее создал и т. Д.

+0

Спасибо. Но это не то, что я искал. Я пытался использовать WcfTestClient. Я знаю, что я могу написать клиент на C# и использовать его. Я пытаюсь понять, как вызывать использование WcfTestClient –