【问题标题】:Entity framework with Uint DataContractJsonSerializer具有 Uint DataContractJsonSerializer 的实体框架
【发布时间】:2014-08-27 19:18:43
【问题描述】:

我有一个 API,我称之为返回 JSON。 我使用 DataContractJsonSerializer 将其反序列化为对象。

我的 JSON 可以具有高于 int.MaxValue 的 uint 值,因此我需要在我的类上有一个 uint 属性以避免异常。

我将这个类用于带有代码优先的实体模型(实体框架)。

这里的问题是 EF6 不支持 uint,所以当我更新数据库时,我什至没有在我的表中获取列。

现在的问题是,如果我想将 JSON 直接转换为我的模型实体,我该如何以最简单的方式解决这个问题。我可以使用序列化程序将 uint 值放入 int 中(只要它有效,我真的不在乎它是否会变为负数)或者我可以以某种方式让 EF 接受我的 uint ..

我当然可以使用两个实体并在它们之间进行转换,但如果可能的话我想避免这种情况?`

谢谢。

【问题讨论】:

    标签: c# json entity-framework uint datacontractjsonserializer


    【解决方案1】:

    使用 long / int64。这是一个 64 位整数,EF 完全支持。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-05-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多