无法在MVC解决方案中将EDMX文件添加到项目中

问题描述 投票:-4回答:4

我创建了一个MVC应用程序。我现在想在解决方案中添加一个新的类库项目,然后将EDMX文件添加到该项目中。

过去这很容易。但现在我必须在.NET Core和.NET Standard之间进行选择。但是看起来我选择哪个并不重要,因为如果我用这些框架中的任何一个创建一个类库,Visual Studio就不提供向它们添加EDMX文件的选项!我没有看到添加标准.NET Frameworks类库的选项。

那么将新项目添加到我的MVC解决方案,然后将EDMX文件添加到该项目的秘诀是什么?

注意:我可以选择将EDMX文件直接添加到MVC项目中。但我更愿意把它放在一个单独的项目中,我以前做过。

asp.net-mvc entity-framework edmx
4个回答
1
投票

EF Core不推荐使用EDMX文件,我相信它也已从.net核心项目中删除。如果你需要这样做,你可能需要将它添加到正常的.net 4.5项目并复制文件,但这与使用.net core或.net标准无关。

你应该使用Code First,因为它更干净,更容易使用。

如果您已经拥有数据库,则可以参考此链接,它可以帮助您从数据库中构建类

https://docs.microsoft.com/en-us/ef/core/get-started/aspnetcore/existing-db


0
投票

@Jonathan:EDMX文件是旧的做事方式。 EDMX只不过是一个T4模板,它有助于创建edmx。

使用.Net Core,最好的方法是:1。创建一个.net核心库项目。从here添加entityframeworkcore nuget包2.使用此链接,从DB到generate your model's

不再支持EDMX的概念。

希望这可以帮助。


-1
投票

根据您的描述,您使用的是旧的ASP.NET MVC框架,而不是新的Core框架,在这种情况下,您使用的是完整的.NET框架。因此,在创建新的类库项目时,应该使用完整的.NET Framework,因为.NET Core和.NET Standard不支持EDMX。如果选择此项,则可以将ADO.NET实体数据模型添加到其中:

enter image description here


-1
投票

至少对于EF v6,如果使用EF迁移,数据库的每个(“状态”/“目标”)快照(存储在迁移历史数据库表和迁移文件中)都是等待解码的EDMX文件,已保存到一个文件,然后加载到VS(Visual Studio)。 ;)

它有点深入(或至少具有挑战性),但'System.Data.Entity.Migrations.Edm.ModelCompressor'可能会提供线索。

基本上,您可以从一个/相关的迁移中提取EDMX。但我同意应该使用Code-First方法来实施,EDMX现在只是一种开发辅助工具。

© www.soinside.com 2019 - 2024. All rights reserved.