Json deserealization to anonimous object Web-Api 2 C#

99
10 февраля 2021, 07:50

Имеется сервер Web-Api 2, который обращается к БД через dapper. На сервере имеется метод для вызова процедуры из БД, подобный этому:

var user = conn.Query<User>("spGetUser", **new { Id = 1 }**, commandType:CommandType.StoredProcedure)

Как видно из примера кода для передачи параметров используются анонимные типы. На одном из контроллеров сервера есть метод Put принимающий в качестве параметров имя процедуры и передаваемые ей параметры:

[HttpPut]
public async Task<IEnumerable<IEnumerable>> CallStoredProcedure(string ProcName, **[FromBody] object sqlParams**)

На клиенте есть метод вызывающий описанный выше метод с контроллера и передающий ему в качестве второго параметра анонимный класс вида:

new {Id = 5, Name = "default", price = 100}

Количество и имена параметров заранее не известны.

Проблема заключается в следующем, на контроллер приходит JObject хранящий в себе строку вида:

{{"Id":5}{"Name": default}{"price": 100}}

При попытке десереализовать данную строку средствами NewtonSoftJson получаем object содержащий в себе вышеупомянутый JObject. Десереализовать в анонимный класс не представляется возможности, т.к. тип объекта на сервере не известен. Передача без десереализцаии этой строки в даппер приводит к возврату null. Много думали, много чего перепробовали, ничего не помогает. Буду очень признателен за любую реальную помощь. Заранее спасибо!

READ ALSO
Поиск ID выбранных элементов

Поиск ID выбранных элементов

Есть combobox с мультивыбором (источник)В него из БД приходят items

112
Какой смысл создавать индекс для этого столбца?

Какой смысл создавать индекс для этого столбца?

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

103
Как перевести 4 байта DWORD в читаемую строку

Как перевести 4 байта DWORD в читаемую строку

У меня имеется файл, в начале которого содержится 4 байта DWORD с некоторым id и я без понятия как его сделать читабельным

98
Как проверить все ли столбцы SQL заполнены?

Как проверить все ли столбцы SQL заполнены?

У меня есть таблица mysql с 50 столбцамиКак проверить на PHP, что все столбцы заполнены?

111