1

我无法使EF 4.1在我的计算机上工作。这似乎是我的数据库设置的一些问题。我正在尝试这个简单的演练: http://blogs.msdn.com/b/adonet/archive/2011/03/15/ef-4-1-code-first-walkthrough.aspx实体框架4.1代码优先冻结

但是当它到达db.Categories.Add(food);它只是冻结。

我有一个正常的SQL Server 2008 R2安装,而不是SQL Express。创建.mdf文件似乎也存在一些问题,而不是直接连接到本地主机SQL服务器。

我也尝试添加一个实体模型与数据库连接,但这似乎并不奏效。有没有人对我有任何指点。

感谢您的任何答案:)

编辑: 我现在得到了System.Data.ProviderIncompatibleException“供应商没有返回ProviderMaifestToken串”

回答

1

我发现了这个问题。这些教程不包含有关我需要使其工作的一些重要调整的信息。

1)您的应用程序必须有一个App.config,其中包含一个与您的继承自DbContext的类名称相同的连接字符串。在我的情况下“TestEF_CF.ProductContext”。

2)在开始使用数据库之前,无法创建数据库。只需将Initial Catalog设置为您希望Entity Framework在自动创建数据库时创建的名称即可。

一旦我做到了这一点,它工作正常。第一步我进一步了解了,但是当我试图保存到数据库时发生了异常。当EF autocreated数据库一切正常。

有一件事情可能使我的开发环境更成问题,可能是我无法直接使用本地mdf文件。如果英孚团队能够比他们现在更加开放地分享这些细节,那么它也不会受到伤害,这将为我(或我们)带来一些挫折。

1

我想这是因为数据库重新初始化。 如果您的EF代码尝试删除并使用SQL Management Studion打开或连接创建数据库。 这种情况出现了。

+0

没有,没有Management Studio或其他数据库连接开放。当我用System.Data.ProviderIncompatibleException等待了足够长的时间时,它崩溃了“供应商没有返回ProviderManifestToken字符串”。 (挪威翻译) –

0

尝试设置在连接字符串的数据源。\ SQLEXPRESS

它确实为我工作

相关问题