|
Клиент на базе Form и дуплексный контракт.
|
|||
---|---|---|---|
#18+
Есть сервер: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76.
и клиент: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46.
Когда пишешь class ServiceClient : IMyServiceCallback то все работает нормально. Когда указываешь class ServiceClient : Form, IMyServiceCallback все это перестает работать. Если стать отладчиком, то видно что метод на клиенте вызывается, но сразу после вылета сервиса по таймауту (1 мин.). Подскажите, как правильно организовать клиента с обратным вызовом на базе Form? Я знаю что в приведенном коде можно просто переделать сервис на односторонний контракт, но меня интересует как сделать именно с дуплексным контрактом клиента на базе Form. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.02.2011, 19:26 |
|
Клиент на базе Form и дуплексный контракт.
|
|||
---|---|---|---|
#18+
UseSynchronizationContext [CallbackBehavior(UseSynchronizationContext = false)] class ServiceClient : Form, IMyServiceCallback Еще не забывайте про ConcurrencyMode = ConcurrencyMode.Multiple если надо. ... |
|||
:
Нравится:
Не нравится:
|
|||
23.02.2011, 19:54 |
|
Клиент на базе Form и дуплексный контракт.
|
|||
---|---|---|---|
#18+
aleks-samЕще не забывайте про ConcurrencyMode = ConcurrencyMode.Multiple если надо. По моим скромным понятиям о WCF мне именно надо [ServiceBehavior(ConcurrencyMode = ConcurrencyMode.Single, InstanceContextMode = InstanceContextMode.PerSession)] Я не до конца понимаю что будет происходить при ConcurrencyMode = ConcurrencyMode.Multiple и ConcurrencyMode = ConcurrencyMode.Reentrant. О [CallbackBehavior(UseSynchronizationContext = false)] практически ничего не знаю. Почитаю. Спасибо! Если можно, простым языком объясните, почему клиент с моими настройками виснет, если он на базе Form? ... |
|||
:
Нравится:
Не нравится:
|
|||
23.02.2011, 22:15 |
|
Клиент на базе Form и дуплексный контракт.
|
|||
---|---|---|---|
#18+
LexxxxxЕсли можно, простым языком объясните, почему клиент с моими настройками виснет, если он на базе Form? В статье, которую я привел, автор в двух словах описывает суть проблемы зависания . ... |
|||
:
Нравится:
Не нравится:
|
|||
24.02.2011, 04:51 |
|
|
start [/forum/topic.php?fid=19&msg=37132913&tid=1397497]: |
0ms |
get settings: |
10ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
180ms |
get topic data: |
11ms |
get forum data: |
2ms |
get page messages: |
54ms |
get tp. blocked users: |
2ms |
others: | 247ms |
total: | 529ms |
0 / 0 |