【问题标题】:type error in EF 4.1EF 4.1 中的类型错误
【发布时间】:2011-03-28 12:23:26
【问题描述】:

我创建了一个实体,它有一个 Int 类型的键。当我运行项目并使用此实体时,出现以下错误:

'Product' 上的 'Id' 属性可以 不设置为“Int64”值。你 必须将此属性设置为非 null 'Int32' 类型的值。

我该如何解决?

编辑:

我正在使用 SQL Server 和实体框架 4.1。我在控制器操作中遇到错误:

public ActionResult Test(long id) 
{ 
    return View(repository.GetObligor(id)); 
}

【问题讨论】:

  • 你如何使用实体?您的数据库中使用什么类型?您应该提供更多详细信息。
  • 在发生错误的地方发布代码会特别有帮助。
  • 我正在使用 SQL Server 和实体框架 4.1。我在控制器操作中遇到错误: public ActionResult Test(long id) { return View(repository.GetObligor(id)); }
  • 下次修改你的问题而不是发布代码来评论。
  • 我们需要看看ProductGetObligor的定义。

标签: .net entity-framework entity-framework-4.1


【解决方案1】:

只需将 'Product' 表的 'Id' 属性设置为 BigInt 或在从 DB 获取它时将其转换为 BigInt 为 Convert(BigInt, Id)

【讨论】:

    【解决方案2】:

    您提到您使用int Id 定义了实体,但您传递了long Id。尝试先将其转换为int 或将实体中的Id 更改为long

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-11-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-18
      • 1970-01-01
      • 2011-08-03
      • 1970-01-01
      相关资源
      最近更新 更多