2009-02-18 2 views
3

Я создаю базовую веб-службу в asp.net/c#, используя простые службы ASMX. Когда я создаю метод, возвращающий класс, это определение класса доступно для обнаружения клиентами службы.ASMX Web Service Expose Class

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

Я понимаю, что это странное требование, но это происходит потому, что мы сериализуем объект и сжимаем сериализованный файл. Мы отправляем объект в виде байта [] в конечном счете. Это вызывает проблему, когда дело доходит до десериализации на другом конце, поскольку клиент не знает о классе.

Есть ли способ украсить класс, чтобы его можно было обнаружить через открытие службы?

Заранее благодарен,

Martin.

ответ

3

Используйте атрибут XmlInclude на открытом классе, чтобы включить другой.

+0

Именно то, что я искал. Большое спасибо за быстрый ответ. – Martin