4

我被迫为我正在编写的基于 EF 的应用程序使用旧版 SQL Server 2000 数据库。表已经存在,所以我需要生成Entities图层。我可以在 VS2010 中使用 MySQL 和最新版本的 SQL Server,但不能在 2000 中执行此操作。

为了解决这个问题,我遵循了一些教程,这些教程解释cslmsdl如何ssdl使用edmgen.exe.

这很好用。我现在有这些文件,例如c:\temp.

请问有人可以告诉我如何处理这些文件吗?我想对我编写的一个简单的控制台应用程序进行实体框架化。我能否以某种方式从这些文件中创建一个“ADO.NET 实体数据模型”,这样如果我一直使用 VS2010,我最终会得到什么?

谢谢

4

2 回答 2

2

我得到了它的工作,这就是我所做的

1)使用 edmgen.exe 生成我的问题中提到的文件

"C:\windows\Microsoft.NET\Framework\v4.0.30319\edmgen.exe" /mode:fullgeneration /c:"Data Source=<your_server_here>; Initial Catalog=<your_catalog_here>; UID=<username>;PWD=<password>" /project:<vs2010_project_name> /entitycontainer:<project_name>Entities /namespace:<project_name>Model /language:CSharpEntityFramework

2)按照这些说明“如何:在实体设计器 CTP2 中使用现有的 CSDL/MSL/SSDL 文件”——它实际上适用于 VS2008,但它也适用于我。

http://blogs.msdn.com/b/dsimmons/archive/2007/12/07/how-to-use-your-existing-csdl-msl-ssdl-files-in-the-entity-designer-ctp2。 aspx

3)我还有一个问题,因为我的旧数据库没有主键,所以我按照这些说明进行操作,这些说明也有效

http://pratapreddypilaka.blogspot.in/2012/04/entity-framework-adding-datatable-with.html

于 2012-09-25T14:30:57.127 回答
0

这些文件在EF 的连接字符串中被引用,EF在运行时使用它们来构建映射,但它仍然无法工作,因为 EF 不支持 SQL Server 2000(至少 EF 4.0 和更高版本)。EF 可以生成 SQL Server 2000 不支持的 SQL,并且在运行时会出现异常。

于 2012-09-24T16:36:25.677 回答