我被迫使用旧的SQL Server 2000数据库来处理我正在编写的基于EF的应用程序。这些表已经存在,因此我需要生成Entities
图层。我可以在VS2010中使用MySQL和最新版本的SQL Server,但不是2000.
为了解决这个问题,我按照一些教程解释了如何使用csl
生成msdl
,ssdl
和edmgen.exe
文件。
工作正常。我现在有这些文件在例如c:\temp
。
有人可以告诉我如何处理这些文件吗?我想要Entity Framework-ify我编写的一个简单的控制台应用程序。我可以以某种方式从这些文件创建一个'ADO.NET实体数据模型',所以如果我一直使用VS2010,我最终会得到什么?
由于
答案 0 :(得分: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,但它也适用于我。
3)我还有一个问题,那就是我的遗留数据库没有主键,所以我按照这些指令工作了
http://pratapreddypilaka.blogspot.in/2012/04/entity-framework-adding-datatable-with.html
答案 1 :(得分:0)
这些文件在EF's connection string中引用,EF在运行时使用它们来构建映射但它仍然无法工作,因为EF不支持SQL Server 2000(至少EF 4.0及更新版本)。 EF可以生成SQL Server 2000不支持的SQL,并且您将在运行时获得异常。