entity-framework - 在 Windows Azure 上使用 EntityFramework 时出现无效的列名称 'CreatedOn'

标签 entity-framework azure azure-sql-database

在 SQL Express 上使用 ASP.NET MVC、Entity Framework 6 Code First,一切都在我的本地计算机上运行良好。当我发布到 Windows Azure 时,事情开始崩溃。默认的 MVC 页面显示得很好。我认为数据是正确的,因为我可以将 Azure 数据库与本地 SQL Express 进行比较,除了 __MigrationHistory 中的几条记录之外,一切都是相同的。这是一个新应用程序,因此我认为有关从以前版本的 EF 转换的其他问题不适用。

当我尝试访问查询数据库的页面时,当我将 Visual Studio 调试器附加到 Azure 网站时,出现以下异常。第一次调用 dbContext.SingleOrDefault 时失败。请注意,当调试器暂停时,我可以在调试器中看到 dbContext 的完整数据。

System.Data.SqlClient.SqlException occurred
  _HResult=-2146232060
  _message=Invalid column name 'CreatedOn'.
  HResult=-2146232060
  IsTransient=false
  Message=Invalid column name 'CreatedOn'.
  Source=.Net SqlClient Data Provider
  ErrorCode=-2146232060
  _doNotReconnect=false
  Class=16
  LineNumber=2
  Number=207
  Procedure=""
  Server=tcp:*.database.windows.net,1433
  State=1
  StackTrace:
       at System.Data.SqlClient.SqlConnection.OnError(SqlException exception, Boolean breakConnection, Action`1 wrapCloseInAction)
  InnerException: 

任何帮助将不胜感激。

最佳答案

似乎这与迁移和删除 CreatedOn 列有关。

我使用 MiniProfiler 得到此异常。我从 bin 文件夹中删除了 pdb 文件(按照 MiniProfiler github 站点中的帖子中的建议),并且不再发生这种情况。

您可能想要检查对 EF 的引用,因为它可能是针对早期版本的 EF 构建的 [nuget] 包中的引用。

关于entity-framework - 在 Windows Azure 上使用 EntityFramework 时出现无效的列名称 'CreatedOn',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26048525/

相关文章:

c# - 使用 AAD 身份验证在 C# 客户端中调用 Azure 函数

azure - 我们可以在管理组级别拥有用户身份吗?

azure - 有没有办法使用 Bicep 获取在 Azure SQL Server 防火墙中配置的多个不相关的 IP 地址?

asp.net-mvc - 由于基于角色的 [Authorize] 属性,ASP.NET MVC 5 Azure 网站无法在某些 View 上连接到 SQL Azure DB

sql - 如何在 SQL Azure 中创建登录名、用户并授予数据库权限?

.net - Entity Framework 应用程序中的虚假重复键错误

c# - Linq to Entities EF4

c# - 在处置 DbContext 时使用 EntityFramework 导航属性

asp.net-mvc - EF 核心和 Azure

c# - SQL Server session 在应用程序关闭时保持打开状态