【发布时间】:2014-08-07 21:10:52
【问题描述】:
我创建了一个 ASP.NET 网站(不是 Web 应用程序),在我的 C# 代码中使用 Visual Studio 2012 Ultimate 和“SQL Server Compact 4.0 本地数据库”。
我能够成功地将网站编译并发布到另一个 IIS Web 服务器,操作系统为 Windows Server 2008 R2 Standard。我什至可以在我开发它的机器上成功地测试这个网站。
我正在从 Visual Studio 中将网站发布到运行 IIS 的网络 Web 服务器。要发布,我正在使用 Build->“发布网站”。在发布配置文件中,我使用的是 Web 部署方法。即使我在我的网站中成功使用了“SQL Server Compact 4.0 本地数据库”,“设置”(在发布配置文件中)也没有检测到项目中的任何数据库。这可能不是问题。
当我尝试在 IIS Web 服务器机器上打开网站时,我收到以下错误。
无法加载文件或程序集 'System.Data.SqlServerCe, Version=4.0.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91' 或其依赖项之一。
由于我的项目是网站,而不是网站应用程序,因此我在解决方案资源管理器中没有引用节点。我认为我项目中的 GAC 类型的 System.Data.SqlServerCe.dll 没有发布到导致此错误的网络服务器。我可以手动复制这个 .dll 吗?如果是,将 ISS Web 服务器放在哪里?我没有看到任何 bin 文件夹。
任何解决此错误的帮助将不胜感激。
谢谢
【问题讨论】:
-
在视图菜单 -> 解决方案资源管理器中。在那里您应该能够看到 References 节点。
-
我可以在查看->属性页->参考时看到我的项目中使用的参考。它显示 System.Data.SqlServerCe,GAC,版本 4.0.0.0。所以我添加了这个参考。这就是我能够在我的项目中使用本地数据库的方式,编译。它说已成功发布。但它不起作用
-
您是否安装了 SqlServerCe Nuget 包?还是您使用了独立安装程序?如果是后者,您需要在将要使用它的每台机器上运行独立安装程序。