Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/database/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何将普通class.cs转换为DataModel.dbml_C#_Database_Entity Framework - Fatal编程技术网

C# 如何将普通class.cs转换为DataModel.dbml

C# 如何将普通class.cs转换为DataModel.dbml,c#,database,entity-framework,C#,Database,Entity Framework,我的旧项目有20个class.cs和x00s属性 现在我想使用EntityFramework 但我不想从一开始就重写所有这些课程 我只想将这个类转换为DataModel.dbml,或者使用像添加现有项这样的东西 我尝试用相同的名称创建类并复制其中的代码,但编辑器在保存后将其清除 我该怎么做? 在web上有大量关于普通旧CLR对象和实体框架代码优先模型的资源 但其要点是: Entity Framework>4.0支持不需要从基类或 实现任何接口以获得持久性。也不需要元数据或映射 属性,因此可以将现

我的旧项目有20个class.cs和x00s属性 现在我想使用EntityFramework 但我不想从一开始就重写所有这些课程 我只想将这个类转换为DataModel.dbml,或者使用像添加现有项这样的东西 我尝试用相同的名称创建类并复制其中的代码,但编辑器在保存后将其清除 我该怎么做?

在web上有大量关于普通旧CLR对象和实体框架代码优先模型的资源

但其要点是:

Entity Framework>4.0支持不需要从基类或 实现任何接口以获得持久性。也不需要元数据或映射 属性,因此可以将现有代码用作简单的实体类。 仍然需要包含概念模型的EDMX文件。将新ADO.NET实体数据模型添加到项目中。 使用工具箱,从工具箱中拖动实体和关联,然后设计概念模型。只需确保POCO类上的名称与概念实体的名称匹配即可。 添加实体键,就像在数据库中添加主键一样。在数据库中添加外键之类的关联。 在解决方案资源管理器中,单击EDMX文件,然后在“属性”窗口中清除“自定义工具”属性,以关闭概念模型的.NET类的自动生成。 右键单击edmx设计区域并选择“从模型生成数据库”。将生成DDL。运行它来创建数据库。 确保您的POCO类和POCO edmx模型位于单独的程序集中。 使用ObjectSet成员创建自定义ObjectContext派生的数据上下文,如。较新的EF版本改用System.Data.Entity.DbContext和System.Data.Entity.DbSet。 您也可以使用dbml-Linq-To-Sql类而不是EF,但是您仍然需要从头生成模型,就像使用EF一样。
DBML文件用于LinqToSql,EF中的evuivelent是EDMX文件。但是,使用EF,您可以首先使用代码进行开发,这不需要任何类型的DB模型文件。所以我可以从我的普通类创建数据库吗?是的,你可以使用任何类,如果你使用fluent API,你根本不需要以任何方式修改它们。谢谢你BenRobinson,但我不知道我该怎么做?任何url或文章?请在我的第一条评论中点击链接。