我已经通过WPI安装了SQL Compact 4.0 CTP 2,并使用NUPack在我的项目中添加了SQLCE.EntityFramework。 它编译和运行完美但我无法在Visual Studio 2010的服务器资源管理器中打开SDF文件。
当我尝试时,我总是收到以下消息:
我已经尝试卸载并重新安装所有内容。
它也无法在SQL Server 2008 R2 Management Studio中打开。
请帮助!!
答案 0 :(得分:12)
安装此(SQL Server Compact 4.0的Visual Studio 2010 SP1工具)完全解决了这个问题: http://go.microsoft.com/fwlink/?LinkId=212219
从这个帖子道具到ErikEJ: http://forums.asp.net/t/1811963.aspx/1
答案 1 :(得分:2)
我在尝试跟进asp.net提供的MVC3(MvcMovie)教程时遇到了同样的问题,当时我被告知要双击“Movies.sdf”文件来查看表格或其他信息。
实际上,解决方案就在请求之下:
注意如果双击Movies.sdf时出现错误,请确保 你已经安装了SQL Server Compact 4.0(运行时+工具支持)。 (有关该软件的链接,请参阅第1部分中的先决条件列表 本教程系列。)如果您现在安装该版本,则必须这样做 关闭并重新打开Visual Web Developer。
安装Sql Server Compact 4.0(运行时+工具支持)后,问题就解决了。
答案 2 :(得分:0)
这个问题有点老了。但我认为答案是VS2010 SP1只有SQLCE 3.5和SQLCE 3.5 x64,而不是SQL Compact 4.0。 SQL产品与Studio结合在一起。今天仍然没有包含在Studio 2010发行版中的SQLCE 4.0(我使用Express版本)。
这个版本的包装不是直接的根本原因,但只是一个线索,不同的版本将需要额外的努力。
此修复程序应涉及在Visual Studio使用的.NET Framework中注册“数据提供程序”。 查看c:\ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ Config \ machine.config中的“DbProviderFactories”。本节介绍.NET和Studio可以使用的数据提供程序。
如果那里有意外的条目,请尝试手动修复框架或注册提供程序。为此,需要一些低级注册工具。对于asp.net提供者来说,有aspnet_regsql.exe等。但对于SQLCE本身,必须有类似的东西。
<system.data>
<DbProviderFactories>
<add name="Microsoft SQL Server Compact Data Provider" invariant="System.Data.SqlServerCe.3.5" description=".NET Framework Data Provider for Microsoft SQL Server Compact" type="System.Data.SqlServerCe.SqlCeProviderFactory, System.Data.SqlServerCe, Version=3.5.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91"/>
</DbProviderFactories>
</system.data>
破解的Studio和工作App之间的区别在于,它们都使用相同的框架,但在配置中具有不同的提供程序。 (或者应用程序使用其他技术来选择DLL并打开SDF)
答案:自SP1以来,正式可以在Studio 2010 SP1中使用SQLCE4.0(感谢Nathan Fisher提供链接http://support.microsoft.com/kb/983509)