Zmień limit czasu dla każdej metody WCF lub wywołania

Mam dość dużą „starą” usługę WCF z wieloma różnymi metodami.

Większość z tych metod jest „normalna”, więc powinny odpowiedzieć w mniej niż 10 sekund, ale istnieje kilka metod (8 lub 9), które są długimi procesami, więc uzyskanie odpowiedzi może zająć dużo czasu.

Odbioru receivetimeout i sendtimeout ustawiono na 00:40:00, aby mieć pewność, że mają wystarczająco dużo czasu na wykonanie tych procesów.

Problem polega na tym, że czasami mamy problemy z połączeniem, a „normalne” metody zajmują naprawdę dużo czasu ...

Wszystkie są w tej samej usłudze, ponieważ używają naprawdę dużego modelu i chcieli ponownie wykorzystać model z usługi w każdym wywołaniu (nie mając PersonsService.User i RobotsService.User ... ponieważ są tej samej klasy w różnych usługi).

Pierwszym rozwiązaniem, które, jak sobie wyobrażam, jest wykonanie innej usługi z tymi długimi procesami i ustawienie krótkiego czasu oczekiwania na normalną usługę ... ale powinienem dokonać wielu zmian z powodu użycia modelu ...

Czy jest jakiś sposób na ustawienie innego limitu czasu w każdym połączeniu? Lub metodą serwisową? Czy i tak powinienem rozdrobnić usługę?

Z góry dziękuję!!

questionAnswers(1)

yourAnswerToTheQuestion