У меня есть некоторые процедуры, основанные на CLR, в моей базе данных SQL Server, которым необходимо использовать веб-службу RESTful, списки POSTing и получение коллекций статусов.
Я думал, что могу использовать JavaScriptSerializer
и использовать JSON, но у меня много проблем с получением SQL Server, чтобы позволить мне (JSON.NET
и System.Script.Serialization
не являются сборками, с JSON.NET
мне разрешено играть, по-видимому, а деревья зависимостей кажутся уродливыми).
Итак, я подумал, что я могу использовать XmlSerializer, но, похоже, он ожидает много метаданных (стиль контракта), которые служба REST не предоставляет, и, похоже, это не позволяет вам преобразовать ваш результирующий XML в определенный тип (например, Dictionary<int, string>
или decimal[]
), как я ожидал бы с помощью JavaScriptSerializer
или сериализатора JSON.NET
.
Я потратил последний час на то, что кажется, что это должен быть простой ответ или простой метод, и я надеюсь, что у моего Google-фу просто есть ebola. Я не могу найти какую-либо официальную рекомендацию о том, как это сделать, и кажется сумасшедшим даже подумать о том, чтобы перевернуть мой собственный сериализатор/десериализатор, когда это должно появиться все время.
Как вы анализируете запросы службы RESTful и ответы от сборки CLR, не просматривая героизм кода?
Создайте POCO, которые соответствуют XML, который вы пытаетесь проанализировать (вы можете использовать аннотации, чтобы модель объекта соответствовала модели XML), а затем используйте XMLSerializer для анализа графа объектов этих POCOs.
Этот сайт поможет вам выполнить эту работу, так как обычно система генерирует динамические сборки для этого (и SQL это не понравится):
Вы уверены, что это должно быть сделано/должно быть сделано вообще в базе данных?