35

我在使用 Visual Studio 2010 SP1 和 ADO.NET Entity Framework 4.1 的模板时遇到很多问题

我注意到其他人也有这些问题,并提出了类似的问题,但我认为他们没有提供足够的信息来解决问题。

问题:ADO.NET 实体数据模型模板没有出现

截图:http ://c0848462.cdn.cloudfiles.rackspacecloud.com/f067439f6e8f25d5fd36761fd1efc88a74fd765ff1.png

解决方案文件

Microsoft Visual Studio Solution File, Format Version 11.00
# Visual Studio 2010
Project("{E24C65DC-7377-472B-9ABA-BC803B73C61A}") = "localhost", "http://localhost:36626", "{9BA46BAD-E736-4943-ACAD-EDE2E7A1A21E}"
    ProjectSection(WebsiteProperties) = preProject
        UseIISExpress = "true"
        TargetFrameworkMoniker = ".NETFramework,Version%3Dv4.0"
        Debug.AspNetCompiler.VirtualPath = "/localhost_36626"
        Debug.AspNetCompiler.PhysicalPath = "..\..\My Web Sites\Jantire\"
        Debug.AspNetCompiler.TargetPath = "PrecompiledWeb\localhost_36626\"
        Debug.AspNetCompiler.Updateable = "true"
        Debug.AspNetCompiler.ForceOverwrite = "true"
        Debug.AspNetCompiler.FixedNames = "false"
        Debug.AspNetCompiler.Debug = "True"
        Release.AspNetCompiler.VirtualPath = "/localhost_36626"
        Release.AspNetCompiler.PhysicalPath = "..\..\My Web Sites\Jantire\"
        Release.AspNetCompiler.TargetPath = "PrecompiledWeb\localhost_36626\"
        Release.AspNetCompiler.Updateable = "true"
        Release.AspNetCompiler.ForceOverwrite = "true"
        Release.AspNetCompiler.FixedNames = "false"
        Release.AspNetCompiler.Debug = "False"
        SlnRelativePath = "..\..\My Web Sites\Jantire\"
    EndProjectSection
EndProject
Global
    GlobalSection(SolutionConfigurationPlatforms) = preSolution
        Debug|Any CPU = Debug|Any CPU
    EndGlobalSection
    GlobalSection(ProjectConfigurationPlatforms) = postSolution
        {9BA46BAD-E736-4943-ACAD-EDE2E7A1A21E}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
        {9BA46BAD-E736-4943-ACAD-EDE2E7A1A21E}.Debug|Any CPU.Build.0 = Debug|Any CPU
    EndGlobalSection
    GlobalSection(SolutionProperties) = preSolution
        HideSolutionNode = FALSE
    EndGlobalSection
EndGlobal

相关系统规格:

  • Visual Studio 2010 专业版 SP1
  • ADO.NET 实体数据模型 4.1
  • ASP.NET MVC 3 工具更新
  • 视窗 7 x64 SP1
  • 网络矩阵

我正在使用 WebMatrix 和 Visual Studio 2010 Professional SP1 对此进行编码

4

11 回答 11

57

打开 VS2010 的安装媒体并浏览到“:\WCU\EFTools”。她你会发现两个文件:

ADONETEntityFrameworkTools_enu.msi

ADONETEntityFrameworkTools_enu.cab

  1. 将这些文件复制到 PC 上的文件夹中。
  2. 在文件夹中创建一个日志文件 - 例如名称为“Log.txt”
  3. 打开 cmd 提示符(可能以管理员身份运行 cmd 提示符)并导航到包含 msi 和 cap 文件的文件夹。
  4. 运行此命令:

    ADONETEntityFrameworkTools_enu.msi USING_EXUIH=1 /log "Log.txt"

安装需要一段时间,请耐心等待。

安装现在应该在“控制面板-> 已安装程序”中显示为“Microsoft Visual Studio 2010 ADO.NET 实体框架工具”。

将新项目添加到项目时,项目模板应在 Visual Studio 中可见。(添加新项目->数据->ADO.NET 实体数据模型)。

更多信息在这里:http: //msdn.microsoft.com/en-us/library/ee225240.aspx

于 2011-08-18T08:27:32.643 回答
7

实际上,您必须添加简单的类库项目,然后执行“添加新项目”,然后您会找到 ADO.NET 实体数据模型。

(似乎从较新的版本中,他们已经删除了这个项目模板,并将其作为“新项目”提供。我正在搜索它,然后发现它像新项目而不是新项目模板。虽然这个 MSDN 链接显示 ado.net 实体数据模型作为新项目:( http://msdn.microsoft.com/en-us/data/ff830362

于 2011-08-03T17:39:04.380 回答
3

安装 Visual Studio 时,有一个名为Microsoft Visual Studio 2010 ADO.NET Entity Framework Tools的单独组件。您只需检查已安装的程序即可检查该组件是否已安装在您的计算机中。如果未安装该组件,您可能必须从 VS 安装媒体重新安装它。

您提到您拥有专业版,但我仍然希望您的添加新项目将包含更多功能 - 我没有看到 Windows 窗体、WPF 和工作流的组 - 所有有效组。看起来您的安装不完整,或者您正在使用一些可能不提供所有组的项目模板。

安装 EF 4.1 不会从 EF 4 添加必要的部分,这些部分是 VS 安装的一部分。EF 4.1 具有这些功能作为先决条件。

于 2011-04-17T22:15:30.690 回答
2

我的解决方案是我的全新项目在项目设置中莫名其妙地设置为使用 .NET 2.0。一旦我将其设置为 4.5,模板就会出现。

于 2012-11-22T20:56:52.203 回答
1

恢复 majidgeek 答案中提出的默认项目模板对我没有帮助(使用 Visual Studio 2012)。

也不修复 Visual Studio。

我使用了 MSDN 的 Web 安装程序来安装 VS2012,所以我没有安装媒体来应用 AH 中建议的解决方案。回答。

但是,从这里接受的答案解决了我的问题:

http://www.datazx.cn/Fv7p5a/xw-US/oaax2pu/2q7xs6/d8x6rssc-b4mt-fsix-bc6c-ct8mf8d6fsbc23rsdfd.html

我终于弄明白了。我从 C:\ProgramData\Package Cache\ 子文件夹运行 EFTools.msi,它只允许我“卸载”或“修复”。我尝试修复,但我遇到了同样的问题,所以我做了“卸载”,然后再次运行它并允许“安装”。安装后,我现在可以添加实体数据模型。

此外,forums.asp.net 上“Visual Studio 2012 Express for Web 中缺少实体框架模板”威胁中接受的答案建议通过“开始 -> 控制面板 -> 程序和功能修复 Visual Studio 2012 enu 的实体框架设计器” ' 可能也可以(我只能发布两个具有我当前 1 点 Stackoverflow 声誉的链接,所以我不会提供确切的来源)。

另一种可能的解决方案:

我的问题是:Visual Studio 安装在 Drive D:\ 上,而实体框架安装程序将包放在 c:...\VisualStudio 10.0\Common7....\ItemTemplates 文件夹中。--> 将 AdoNetEntityDataModelCSharp.zip 复制到驱动器 d: 并运行 devenv /installvstemplates。这为我解决了问题。编辑:还必须从 IDE 文件夹、PrivateAssemblies 和 PublicAssemblies 复制各种 DLL。然后运行 ​​devenv /ResetSkipPkgs

http://social.msdn.microsoft.com/Forums/en-US/c059069b-eae4-48b4-a06e-ffd5f186077b/adonet-data-entity-model-template-missing-in-vs-2010-ultimate?forum= adodotnetity框架

我还在非默认路径(不同的磁盘分区)中安装了 VS,因此它确实可能是问题的潜在原因之一。

于 2013-11-06T21:05:14.497 回答
1

该模板可以从以下链接下载。

microsoft.com ADO.net 4.1 下载

于 2013-01-05T13:50:04.100 回答
0

在 C:\ProgramData\Package Cache 中搜索 EFTools.msi 并安装最新版本。

于 2014-03-24T14:36:11.713 回答
0

尝试恢复默认项目模板

于 2013-03-21T09:30:20.770 回答
0

我已经卸载了 VS2012 Ultimate 试用版并安装了 VS2012 Premuim 并且发生了这种情况。在 Windows 7 控制面板\程序\程序和功能中,我找到了“Visual Studio 2012 的实体框架设计器 - enu 并进行了修复并修复了所有问题。

于 2012-09-17T19:37:48.863 回答
0

如果您已经安装了完整的 VS 并且没有出现模板,请尝试运行 VS2010 安装程序并单击Repair/Reinstall,然后在处理完成后,重新启动系统。

于 2013-03-21T16:01:55.953 回答
0

我终于能够添加模板。我不得不重新安装 EntityFramework 4.1,然后重新安装 Visual Studio 模板。以下是步骤:

  1. 从http://www.microsoft.com/en-gb/download/details.aspx?id=8363安装 EntityFramework 4.1
  2. 使用 Visual Studio 命令提示符,导航到 IDE,运行 devenv /installvstemplates
于 2013-10-30T11:25:43.093 回答