有人能帮帮我吗?现在我正在将我的Web API项目连接到现有数据库。有人建议使用EntityFramework。我在“实体数据模型向导”中应用代码优先方法,但问题是我实际上应该只导入表,但在“选择数据库对象和设置”部分,我也意外地导入了视图。所以我想撤消导入。
我在Code First向导后看到,应该将app.config文件添加到项目中,但是缺少此文件。还找不到.edmx文件。我搜索了文件夹中的所有文件但仍未找到。但是当我查看web.config文件中的ConnectionString标记时,我在向导中创建的新连接就在那里。
答案 0 :(得分:0)
请按照以下步骤再次从数据库更新EDMX:
打开EDMX文件 2.右键单击EDMX文件,然后选择“从数据库更新模型” 3.在新向导中,转到“删除”选项卡并展开“视图” 4.选中要撤消的视图 5.单击“完成”
希望这会对你有所帮助。
答案 1 :(得分:0)
首先,几句话:
我正在“实体数据模型向导”
中应用代码优先方法
代码优先意味着没有.edmx文件。有迁移文件和代码映射。
我在Code First向导后看到app.config文件应该是 添加到项目中,但缺少此文件
这里不是100%肯定,但我想如果你的项目已经有一个web.config
文件,它将被用来代替添加一个新的app.config
文件(它们基本相同)。
所以,问题是您必须启用和使用代码迁移,您必须为您的实体生成POCO类(如果您还没有它们),并且您必须添加扩展{{ 1}}并包含DbContext
用于您的实体,以及一些数据库初始化代码。
This page解释了如何处理所有这些中最困难的部分:处理代码迁移。虽然它假定您从现有的edmx模型迁移并使用Power Tools,但您可以忽略该部分并专注于有关迁移的有用信息。也就是说,直接跳到页面中的第2步。
关于删除导入的视图,我猜你没有到达生成迁移的部分,所以可能你只需删除为视图创建的POCO类,也可能删除{{1} }为这些实体添加到DbSets
。
如果您生成了一些迁移,则可以生成新迁移或修改现有迁移。这可以通过为视图实体添加显式DbSets
映射并再次运行DbContext
来完成。如果您没有进入迁移部分,只需忽略最后一段。
希望它有所帮助。