Что может заменить Linq2Xsd?
Мы используем Linq2Xsd уже десять лет. Для обеспечения централизованного контроля внутренних структур данных и внешних интерфейсов мы сочли это бесценным. Размер нашей команды составляет около 10 разработчиков в 3 подгруппах. Нам очень нравится, как вы можете разветвлять код, редактировать контракт, назначать его разработчику и давать им письменное описание изменений DC и требуемой функциональности. Однако, мы достигли того момента, когда технологии, которые мы используем, давно стоят на ногах, и мы не можем гарантировать, что они будут продолжать функционировать в будущем.
Тем не менее, мы не готовы отказаться от контракта в первую очередь нашего рабочего процесса. (В нашем конкретном отделе) Это просто работает слишком хорошо.
Наша "бэкэнд" система состоит из:
- Уровень доступа к данным Linq To Sql, сгенерированный из базы данных (должен быть заменен LinqConnect Devart)
- Уровень бизнес-логики на основе Linq To Xsd, сгенерированный из основного контракта XSD, как общие точки входа, так и открытые структуры данных. Также проверяет входящий XML на соответствие XSD
- Многие проекты интерфейсов, которые извлекают WSDL из BLL автоматически, генерируют сервис, будь то SOAP или REST.
Вот примеры использования, которые должны быть заполнены одним или несколькими, хорошо поддерживаемыми или по крайней мере с открытым исходным кодом, надстройками для Visual Studio 2012 и / или Visual Studio 2017.
Метод создания структурированного документа хорошо известного типа, который может быть прочитан во время сборки и используется для создания открытых статических методов и классов открытых данных, предоставляемых проектом.
Входящие данные, в двоичном или текстовом документе, могут быть сверены с указанным договором.