我创建了Model1.edmx
文件,相应地也创建了Model1.Designer.cs
文件。我决定将Model1.Designer.cs
的所有代码复制到dal.cs
文件,并删除Model1.edmx
+ Model1.Designer.cs
文件。
当我尝试连接时,我得到映射失败的错误,没有找到SSDL,CSDL。
有没有办法使用Linq到实体没有.edmx
文件,但只是使用Model1.Designer.cs
中的代码?
如果您在EDMX中定义映射,那么没有EDMX就无法使用它。EDMX是必要的,因为构建过程将把EDMX文件分解为多个资源,指定类和数据库之间的映射。这些资源在运行时使用。
如果你不想有EDMX文件,你不能使用它,相反,你可以尝试代码优先的方法(更多的教程可在该页)在实体框架4.1。您还可以使用辅助工具EF Power Tools为您从现有数据库生成代码映射(开始学习如何从代码映射表可能是很好的)。