Entity framework с Uint DataContractJsonSerializer

У меня есть API, который я называю возвратом JSON. Это я десериализую в объекты, используя DataContractJsonSerializer.

Мой JSON может иметь значения uint выше, чем int.MaxValue, поэтому мне нужно иметь свойство uint в моих классах, чтобы избежать исключений.

Этот класс я использую для модели сущностей с codefirst (инфраструктура Entity).

Проблема здесь в том, что EF6 не поддерживает uint, поэтому я даже не получаю столбцы в своей таблице при обновлении базы данных.

Теперь вопрос в том, как я могу решить это самым простым способом, если я хочу преобразовать JSON непосредственно в объекты моей модели. Что-то, что я могу сделать с сериализатором, чтобы поместить значения uint в int (мне все равно, станет ли он отрицательным, пока он работает), или, может быть, я могу каким-то образом заставить EF принимать мои uints.

Я, конечно, могу использовать две сущности и конвертировать между ними, но я хотел бы избежать этого, если это возможно?»

благодаря.


person Evelie    schedule 27.08.2014    source источник


Ответы (1)


Используйте длинный / int64. Это 64-битное целое число, полностью поддерживаемое EF.

person Ben Robinson    schedule 27.08.2014