2016-12-18 4 views
0

Я хочу пройти тест, чтобы обеспечить мой сервис WCF.Тест WCF/Тест на дым

Я нашел это:

[OperationContract] 
public void Ping(){} 

Я положил, что в моем IService, но не в Service.svc? Как я знаю, что это работает? Я помещаю кнопку и текстовое поле в своем пользовательском интерфейсе, которое вызывает этот метод, и имеет какой-то оператор в этом методе ping, который помещает значение в текстовое поле, если этот метод Ping запущен? Вот что я предлагаю:

IService:

[OperationContract] 
public void Ping() 
{ 
    TextBox.Text = "Okay".ToString(); 
} 

Интерфейс пользователя:

private void btnPing_Click(object sender, RoutedEventArgs e) 
{ 
    public void Ping() 
} 
+0

Как вы можете вызвать этот метод непосредственно в вашем методе тестирования. – Rajput

ответ

0

Для тестирования службы WCF и работает сделать форму окна (как вы уже сделали) Написать нажмите на проект/решение и выберите Добавьте ссылку на службу.

Вставьте свой служебный url в текстовое поле адреса (например, www.xyz.com/abcservice.svc или www.xyz.com/true?wsdl) Измените пространство имен в том же мастере (по умолчанию будет ServiceReference1).

Теперь используйте событие нажатия кнопки, как то, что вы делали, и вызывайте этот метод.

private void btnPing_Click(object sender, RoutedEventArgs e) 
{ 
    ServiceReference1.yourServiceClassName obj = new ServiceReference1.yourServiceClassName(); 
obj.ping(); 
//Check your output if that is not throwing any exception. 
} 

Если нет ошибки или исключения, все в порядке.

+0

Итак, в этом случае я могу использовать свой существующий пользовательский интерфейс WPF, добавить кнопку «Тест Ping». добавьте еще одну ссылку на службу, называемую «ServiceReferenceTest», вставленную в адрес из UI App.config, такую ​​как http://projectname.azurewebsites.net/'MyProjectServiceName1 ' – Coolhand

+0

да ваш service.svc из файла appconfig службы не UI – Rajput

+0

Так что в этом случае , Я могу использовать мой существующий пользовательский интерфейс WPF, добавить кнопку «Ping Test». Затем я добавляю еще одну ссылку на службу, называемую «ServiceReferenceTest», вставляющую в адрес из файла UI App.config, например http://projectname.azurewebsites.net/'MyProjectService ', и я добавляю этот метод к исходному MyProjectService.svc.cs и добавить еще одну подпись метода контракта операции в ImyProjectService.cs? – Coolhand

Смежные вопросы