Я использую SubSonic 2 некоторое время, но по мере того как я начинаю новый проект, я хотел бы обновить до 3. В моем старом проекте я использовал обычную, - неустойчивый взлом для сериализации вещей для веб-сервисов. Я действительно хотел бы найти более элегантное решение.Селективная сериализация с порожденными SubSonic классами
Я использую Mono, поэтому мне нужно оставаться внутри реализованных классов, например. Вероятно, DataContractSerializer. Все еще на ASMX, хотя хотелось бы перейти на WCF, как только поддержка будет твердой. Первоначальными клиентами станут Moonlight/Silverlight. JSON/protobuf в будущем ...
Стандартный Xml-сериализатор отказался, поэтому мне нужен какой-то способ взять его под контроль. Это подводит меня к IXmlSerializable. Я довольно незнакома с шаблонами SS, но кажется, что их редактирование позволило бы мне генерировать код сериализации, необходимый, чтобы не трогать остальную цепочку иерархии. Это хорошая идея"?
Я хотел бы просто использовать поддержку POCO SS, но я не думаю, что он поддерживает сложные типы или массивы.
Другие мысли/варианты?
Спасибо Марка, большой вентилятор вашей реализации protobuf, безумно быстро. Хотя я могу управлять сериализацией вручную, эндшпиль состоит в том, что другие люди могут также использовать веб-службы. Я надеялся иметь более автоматический подход, например. пользователю предоставляется XSD/WSDL, который не упоминает остальную иерархию SS. Затем они генерируют свои классы из него и т. Д. – joe
@joe - в этом случае я бы рекомендовал просто создать отдельный слой DTO, который * аналогичен * для типов SS, но под вашей прямой командой. –
Это было мое оригинальное обходное решение. :) Хотя я сделал это вручную, что я подразумевал под неустойчивым. Полагаю, это может быть довольно автоматическое с SS шаблонами, а? Я попробую это и опубликую результаты. – joe