【问题标题】:Entity Framework Sql Azure mapping errorEntity Framework Sql Azure 映射错误
【发布时间】:2016-11-06 17:34:19
【问题描述】:

设置:

Asp.NET Web Api 2(在 Azure 云服务中运行,3 个实例)、Entity Framework 6.1 和 Sql Azure

问题

我的应用程序突然开始报告大量奇怪的错误。

当使用 EF 从数据库中获取实体时,会报告这些类型的错误:

““{TableName}”上的“{PropertyName}”属性无法设置为“System.String”值。您必须将此属性设置为“System.Int64”类型的非空值”

还有

“'{TableName}' 上的 '{PropertyName}' 属性无法设置为 'System.Int64' 值。您必须将此属性设置为 'System.String' 类型的非空值。”

我的解释是,与我试图映射的对象相比,数据库返回的对象不匹配,但我不明白为什么会突然发生这种情况,在数百万个请求运行良好之后.

在我写这篇文章时,我重新启动了 api 实例,现在错误消失了。

我们将不胜感激任何帮助解决这个问题。

【问题讨论】:

  • 你知道异常的来源吗?您确定它们不是来自以前未解决的 API 方法吗?
  • 嗨,是的,我很确定。这些方法每秒大约被调用 10 次,并且在此开始之前已经运行了好几天。

标签: asp.net entity-framework-6 azure-sql-database


【解决方案1】:

原来可能的原因是工作单元模式设置错误。自我注意:不要创建新的 dbcontext 来替换正在使用的 dbcontext :)

【讨论】:

    猜你喜欢
    • 2014-02-25
    • 1970-01-01
    • 2012-03-18
    • 1970-01-01
    • 1970-01-01
    • 2017-12-31
    • 2017-08-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多