繁体   English   中英

在 VS2017 中找不到 ADO.net 实体数据模型模板

[英]Can't find ADO.net Entity Data Model template in VS2017

我试图在 Visual Studio 2017 中创建一个 ASP.NET MVC Web 应用程序。我需要采用 EF 数据库优先的方法来完成这项工作。

不幸的是,我在“数据”模板文件夹中找不到 ADO.NET 实体数据模型模板:

在此处输入图片说明

我尝试了以下对我不起作用的建议。

  1. 通过 NuGet 安装实体框架 6.x
  2. 通过双击最新的 msi 文件手动安装包
  3. 将 .NET 版本从 4.6.x 更改为 3.5

注意:我的机器上安装了 VS 2015 和 VS 2017。 只有 VS 2017 有问题。

我创建了 ASP.NET MVC 项目如下:

File -> New -> Project -> Web -> ASP.NET Web Application (.NET Framework) -> MVC

有谁知道这个问题的解决方案?

  1. 转到工具 -> 获取工具和功能
  2. 选择单个组件选项卡并检查 SDK's、libraries 和 framework 部分下的 Entity Framework 6 工具

您似乎添加了不支持 ADO.net 实体数据模型的“类库(.NET 标准)”。 您可以添加“类库(.NET 框架)”

对于那些尝试其他解决方案但仍然看不到模板的人...

也许您正在尝试将 ADO EF 添加到.NET Core 2.0 项目,但不支持 EF 开箱即用

您有 2 个选择:

  1. 安装支持 .NET Standard 2.0 的 Core 2.0 SDK 和 NuGet
  2. 使用 .NET 4.x 项目而不是 Core

我推荐#1。 VS 2017 实际上并没有安装完整的 Core 2.0 SDK,也没有从 VS 安装程序中获得它(这里有很多评论都在争论)。

我知道,令人困惑,对吧?

来自微软:

“您需要下载并安装适合您平台的 .NET Core 2.0 SDK 版本。即使您已安装 Visual Studio 2017 版本 15.3,也是如此。”

“为了在 .NET Core 2.0 之外的 .NET 平台上使用 EF Core 2.0 或任何其他 .NET Standard 2.0 库(例如,使用 .NET Framework 4.6.1 或更高版本),您需要一个知道.NET Standard 2.0 及其兼容框架”

https://blogs.msdn.microsoft.com/dotnet/2017/08/14/annoucing-entity-framework-core-2-0/

现在...安装了所有这些,但仍然没有看到 ADO 模板? 我相信这是因为它已被弃用/过时。 这是让 EF 在 .NET Core 中工作的方法: https : //docs.microsoft.com/en-us/ef/core/get-started/aspnetcore/existing-db

希望这可以帮助! 不客气。

我必须使用 .Net 4.5.2 创建一个新项目,然后才能添加 ADO.NET 实体数据模型。

  1. 文件 -> 新建项目
  2. 选择 Web -> ASP.NET Web 应用程序(.NET Framework)
  3. 将窗口底部的 Framework 设置为 .NET Framework 4.5.2 在此处输入图片说明
  4. 使用空模板在此处输入图片说明
  5. 右键单击项目(不是您的解决方案)-> 添加-> 新建项目
  6. 选择数据 -> ADO.NET 实体数据模型在此处输入图片说明

不是这样的解决方案,但请检查您添加的项目是否适用于 .NET Framework 而不是 .NET Standard。 用于添加 ADO.NET 实体数据模型等内容的模板包含在 .NET Framework 中。

我认为您选择了类库(.NET Standard)而不是类库(.NET 框架),尝试选择类库(.NET 框架)您会得到它。

工具-->点击获取工具和功能-->点击修改-->点击单个组件-->勾选实体框架6工具的复选框-->点击Modify -->你会得到一个弹出窗口-->点击重试(如果没有关闭,点击继续

现在启动 VS,这次检查数据ADO.NET 实体模型将被添加。

请查看这篇文章http://dotnet-jigyasa.blogspot.com/2018/03/adonet-entity-data-model-missing-visual.html为我工作。

要解决上述问题,您可以修改 Visual Studio 2017。您可以按照以下步骤操作。

  1. 转到计算机的控制面板\\程序\\程序和功能。

  2. 选择Microsoft Visual Studio 2017,右键单击并更改。

  3. 它将转到 Visual Studio 产品窗口,然后单击修改按钮。

  4. 现在在 Web & Cloud 部分勾选 ASP.Net 和 Web 开发工作负载并修改它。

  5. 最后启动 Visual Studio 2017。

我在 VS2017 社区版中遇到了同样的问题。 我以前尝试过以下但没有奏效:

  • 为“SQL Server Data Tools”安装了新功能。
  • 已安装 NuGet 库。

最后经过仔细调查,我的目标是错误的
请参阅图像:您应该选择 .NET Framework 而不是 .NET Standard

对我来说,在针对“.NET 框架”而不是“.NET 标准”工作时更改为正确的项目类型。

基本上我发现的是当您选择 .Net Core Project EF 时未显示在数据选项卡下。 您需要选择 .Net Framework 而不是 .Net Core。 然后你会在数据选项卡下找到所有的东西。

你的 EF 工具不见了。 您需要再次运行安装程序,并从“选择包”中选择enitityframeworktools以获取项目中所需的选项。

我的情况是我的项目-> 属性-> 目标框架是 2.0,我更改为 4.5 并且知道它可以工作,我知道我看到了 ado.net 实体数据模型。

确实,此功能在 Core 中不可用,这可能无法直接回答问题。 但是 Core 提供了逆向工程命令行,我已经成功地将其用于现有数据库的项目。

您需要做的只是在包管理器控制台中运行以下命令,它将根据现有数据库为您生成模型:

Scaffold-DbContext 'Data Source=.\SQLEXPRESS;Initial Catalog=DbName;Integrated Security=True;MultipleActiveResultSets=True' Microsoft.EntityFrameworkCore.SqlServer

或者直接从命令行使用 dot net。

dotnet ef dbcontext scaffold "Data Source=.\SQLEXPRESS;Initial Catalog=DbName;Integrated Security=True;MultipleActiveResultSets=True" Microsoft.EntityFrameworkCore.SqlServer

要了解有关此功能的更多信息,您可以在 Microsoft 页面上阅读更多信息:
https://docs.microsoft.com/en-us/ef/core/managing-schemas/scaffolding

我的解决方案是将另一个项目中的“edmx”文件复制到带有 asp.net core 的项目中,并且完美运行,具有所有功能,问题仅在于列表中的模板可用。

就我而言,我之前使用过 ADO .NET,所以我知道它已安装..所以我只是在右上角的搜索框中输入了 ADO,它就在那里,解决了! 希望这可以帮助

首先在您的项目应用程序属性中将框架更改为 4.5.2。 在此处输入图像描述只需在解决方案资源管理器中右键单击您的应用程序(不是项目解决方案),然后选择添加菜单并在添加菜单下选择 ADO.Net。 使用 ADO.NET 为所欲为。 祝你好运。

Visual Studio 根据您单击的区域显示可用项目。 右键单击项目名称 root -> add -> new item -> Data 您将能够选择 ADO.NET Entity Data Model

确保您是正确的 - 单击适当的项目,而不是解决方案。

各自的用户界面看起来几乎相同; 他们甚至有相同的键盘快捷键。 如果您希望它在那里,那么解决方案中的一个将“错过”数据选项卡; 例如从截图。

还要确保,根据之前的帖子,您拥有: 支持实体框架和 b 的项目。 您确实安装了适当的工具。

我遇到了同样的问题。 就我而言,已经检查了各个组件下的 Entity Framework 6 工具和 SQL 工具选项。 我尝试使用相同的选定组件重新安装,这对我有用。

如果你不能像我一样去创建一个新项目

并且您确定您选择了正确的类库,对我有用的是进行清理和构建,然后只需从我的解决方案资源管理器和 whalah 中打开一个文件,

希望它有帮助 这是一个相当广泛和通用的问题

  1. 文件 -> 新建项目
  2. 选择 Web -> ASP.NET Web 应用程序 (.NET Framework)图像 1
  3. 右键单击模型 -> 添加 -> 新项目(注意:它不适用于 App_Data 等其他文件夹)图像 2
  4. 选择 Visual C# 然后选择 ADO.NET 实体数据模型图像 3

Visual Studio 根据您单击的区域显示可用项目。 右键单击项目名称 root -> add -> new item -> Data 您将能够选择 ADO.NET Entity Data Model

我认为您添加了不支持 ADO.net 实体数据模型的“类库(.NET 标准) ”。 您必须添加“类库(.NET 框架)

只需简单地打开Visual studio setup 如果您已经安装,请选择修改部分并勾选.NET desktop development选项并安装它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM