Этот баннер — требование Роскомнадзора для исполнения 152 ФЗ.
«На сайте осуществляется обработка файлов cookie, необходимых для работы сайта, а также для анализа использования сайта и улучшения предоставляемых сервисов с использованием метрической программы Яндекс.Метрика. Продолжая использовать сайт, вы даёте согласие с использованием данных технологий».
Политика конфиденциальности
|
|
|
WCF и несколько классов
|
|||
|---|---|---|---|
|
#18+
Начинаю строить WCF сервис для WinForms. Стоит следующая задача. Имеется сборка бизнес - логики. Она состоит из нескольких классов(бизнес объектов). Клиент WCF должен работать с этимим классами прозрачно. На сколько я знаю клиентское ПО будет общаться с WCF сервисом используя заранее известный интерфейс. Интерфейс используется для реализации от него только одного класса. Т.е. что имеем: Вот наша бизнес логика: Код: plaintext 1. 2. 3. 4. 5. 6. Как прозрачно хотим использовать их на клиенте: Код: plaintext 1. 2. Для реализации WCF определяем интерфейс Код: plaintext 1. 2. 3. Вопрос в чем. Можно ли это как то реализовать для WCF? И использовать с WCF. Пока что делаю общий интерфейс где названия методов различаю, подставляя впереди названия метода, название класса. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2008, 14:01 |
|
||
|
WCF и несколько классов
|
|||
|---|---|---|---|
|
#18+
Неправильно. Правильно бизнес-классы сложить в одну кучу, бизнес-логику -- в другую. То есть: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. И уже IDocumentApprovalService надо делать доступным через WCF. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2008, 14:29 |
|
||
|
WCF и несколько классов
|
|||
|---|---|---|---|
|
#18+
НахлобучНеправильно. Правильно бизнес-классы сложить в одну кучу, бизнес-логику -- в другую. То есть: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. И уже IDocumentApprovalService надо делать доступным через WCF. Не понял что у тебя делают эти методы: Код: plaintext 1. 2. И как я смогу видеть БО если в IDocumentApprovalService они не определены ? Локально с приложением сборку с БО таскать не катит. Хочется централизованно бизнес логику обновлять. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2008, 14:36 |
|
||
|
WCF и несколько классов
|
|||
|---|---|---|---|
|
#18+
webusИ как я смогу видеть БО если в IDocumentApprovalService они не определены ? Поясни, не понял. webus Локально с приложением сборку с БО таскать не катит. Хочется централизованно бизнес логику обновлять. Я ж и говорю -- объекты и логику держи отдельно. Клиент и сервер оперируют одним и тем же набором бизнес-объектов, а вся логика сосредоточена на сервере и доступ к ним осуществляется через эти самые интерфейсы. Пример, который я показал, -- просто пример. Есть класс "документ", его можно "утверждать". Вся логика утверждения вынесена из класса Document в сервис IDocumentApprovalService. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2008, 14:53 |
|
||
|
WCF и несколько классов
|
|||
|---|---|---|---|
|
#18+
>webus > ...Имеется сборка бизнес - логики ... Может попытаться так - сборка бизнес-логики содержит класс реализации интерфейсов. Бизнес-логика реализуется в методах соответствующих классов. Для каждого класса бизнес-логики свой интерфейс. Имеется в сборке и класс, реализующий сервис - все методы всех классов бизнес-логики (класс переходов). Здесь каждый метод, не более чем вызов требуемого метода соответствующего класса бизнес-логики. Код: 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. Классы бизнес-логики создаются в конструкторе класса сервиса С уважением, Владимир. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.02.2008, 23:09 |
|
||
|
WCF и несколько классов
|
|||
|---|---|---|---|
|
#18+
А в чём напряг создать 2 сервиса? Сервис Код: 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. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. Код: 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. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2008, 00:57 |
|
||
|
WCF и несколько классов
|
|||
|---|---|---|---|
|
#18+
Внимательно глянь мой пример. Каждый сервис реализует 2 интерфейса. И проксю можно создавать от каждого. Возможно это тебя устроит. _____________________________________________ Death to Videodrome, long live the New Flesh! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2008, 01:21 |
|
||
|
WCF и несколько классов
|
|||
|---|---|---|---|
|
#18+
buredВнимательно глянь мой пример. Каждый сервис реализует 2 интерфейса. И проксю можно создавать от каждого. Возможно это тебя устроит. _____________________________________________ Death to Videodrome, long live the New Flesh! Да ты прав. Твой пример мне подходит. Спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2008, 09:50 |
|
||
|
WCF и несколько классов
|
|||
|---|---|---|---|
|
#18+
>bured >Внимательно глянь мой пример... Может быть в этом случае совсем отказаться от размещения в сборке 2-х сервисов? Каждый сервис - одна сборка. С уважением, Владимир. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2008, 11:03 |
|
||
|
WCF и несколько классов
|
|||
|---|---|---|---|
|
#18+
2 ВМоисеев Иерархию контрактов лучше делать в одной сборке. _____________________________________________ Death to Videodrome, long live the New Flesh! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2008, 17:20 |
|
||
|
WCF и несколько классов
|
|||
|---|---|---|---|
|
#18+
>bured >Иерархию контрактов ... Можно чуть поподробнее. Я не сталкивался с подобными задачами. С уважением, Владимир. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2008, 19:56 |
|
||
|
WCF и несколько классов
|
|||
|---|---|---|---|
|
#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. Код: 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. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. Death to Videodrome, long live the New Flesh! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.02.2008, 20:04 |
|
||
|
WCF и несколько классов
|
|||
|---|---|---|---|
|
#18+
>bured >Иерархия в смысле наследование контрактов. Спасибо за представлннную информацию. С уважением, Владимир. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.02.2008, 10:17 |
|
||
|
WCF и несколько классов
|
|||
|---|---|---|---|
|
#18+
2 bured Спасибо, очень полезные примеры. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 04.04.2008, 21:50 |
|
||
|
WCF и несколько классов
|
|||
|---|---|---|---|
|
#18+
Примеры взяты из этой книги. Кстати, вроде бы на русском скоро должна выйти. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.04.2008, 09:05 |
|
||
|
WCF и несколько классов
|
|||
|---|---|---|---|
|
#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. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. 119. 120. 121. 122. 123. 124. 125. 126. 127. 128. 129. 130. 131. Клиент Код: 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. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. 116. 117. 118. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.06.2008, 04:07 |
|
||
|
WCF и несколько классов
|
|||
|---|---|---|---|
|
#18+
P.S. webus поставь для меня песенку ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 23.06.2008, 04:11 |
|
||
|
WCF и несколько классов
|
|||
|---|---|---|---|
|
#18+
buredА в чём напряг создать 2 сервиса? Сервис Код: 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. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. Код: 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. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93. 94. 95. 96. 97. 98. 99. 100. 101. 102. 103. 104. 105. 106. 107. 108. 109. 110. 111. 112. 113. 114. 115. А считаю, что примеры предоставлены с ошибками! 1-е - это почему у хоста address="" а у клиента address="http://localhost/WCF/MultiContractService/ServiceA.svc" такое в принципе не должно работать вместе. 2. если на хосте так и оставить как есть такой урезанный конфиг, то работать тоже не будет. при билде компилятор будет ругаться на неизвестный интерфейс IMetadataExchange короче ничего не работает.. автор топика либо сам додумался, либо знал как настроить конфиги хоста и клиента. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.09.2008, 15:22 |
|
||
|
WCF и несколько классов
|
|||
|---|---|---|---|
|
#18+
За такой оверквотинг поубывал бы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.09.2008, 16:50 |
|
||
|
WCF и несколько классов
|
|||
|---|---|---|---|
|
#18+
МляЗа такой оверквотинг поубывал бы. иди и поубивай ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.09.2008, 16:54 |
|
||
|
WCF и несколько классов
|
|||
|---|---|---|---|
|
#18+
flashslash МляЗа такой оверквотинг поубывал бы. иди и поубивай Уже. Колесо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.09.2008, 17:21 |
|
||
|
WCF и несколько классов
|
|||
|---|---|---|---|
|
#18+
Убивают люди которые ни хрена не умеют, а только звездят. Держи, дядя не жадный. У меня хостилось на IIS. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.09.2008, 21:46 |
|
||
|
WCF и несколько классов
|
|||
|---|---|---|---|
|
#18+
2 ФлэшСлэш Могу ещё выслать. Пиши письма. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 05.09.2008, 21:56 |
|
||
|
WCF и несколько классов
|
|||
|---|---|---|---|
|
#18+
Упс, я и не посмотрел с кем разговариваю. Думаю разговор окончен. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.09.2008, 08:20 |
|
||
|
|

start [/forum/topic.php?fid=19&msg=35128223&tid=1397957]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
73ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
54ms |
get tp. blocked users: |
1ms |
| others: | 310ms |
| total: | 479ms |

| 0 / 0 |
