Могу ли я создать службу WCF без использования атрибутов?
-
05-09-2019 - |
Вопрос
Кажется, вы объявляете службы WCF, создавая интерфейс на C# или VB, а затем помечая его тегом ServiceContractAttribute
и это методы с OperationContractAttribute
.
Проблема в том, что я хотел бы попробовать создать его на основе IronRuby или IronPython, которые (насколько мне известно) не поддерживают атрибуты.
Это возможно?
Решение
Вы можете просто использовать объектную модель в System.ServiceModel.Description пространство имен (например.ContractDescription), чтобы создать нужные объекты описания, вставьте их в описание услугиконечные точки, а затем откройте хост.Но это очень нетривиально.
Другие советы
AFAIK, вы еще не можете в IronRuby.Это одна из тех вещей взаимодействия, которые отодвинуты на второй план, пока ведется работа над языковой совместимостью.Еще предстоит много дискуссий о том, как это сделать...но это то, что хотели бы видеть те из нас, кто работает над IronRuby.
Ну, хотя я бы не стал (просто предпочтение, не нужно меня расстраивать), вы могли бы использовать такой язык, как Boo:
Другая альтернатива — просто создать часть на C#, которая будет осуществлять это взаимодействие за вас, а затем вызвать ее из IronyRuby или любого другого языка, который вы хотите использовать.