SQL CE 部署 - AppHarbor - 无法加载 SQL Server Compact 的本机组件
Posted
技术标签:
【中文标题】SQL CE 部署 - AppHarbor - 无法加载 SQL Server Compact 的本机组件【英文标题】:SQL CE Deploy - AppHarbor - Unable to load the native components of SQL Server Compact 【发布时间】:2011-05-19 11:14:30 【问题描述】:我完全关注了以下帖子:
http://support.appharbor.com/discussions/problems/544-error-with-reference-to-systemdatasqlserverceentity-dll
Using SQL Server CE 4 on a remote host with MVC 3
我仍然收到以下错误:
无法加载与版本 8482 的 ADO.NET 提供程序对应的 SQL Server Compact 本机组件。请安装正确版本的 SQL Server Compact。有关详细信息,请参阅知识库文章 974247。
我做了什么:
新文件 -> 新的 ASP.NET MVC 3 应用程序。通过 NuGet 添加了 EFCodeFirst.SqlServerCompact v0.8.8482.1,其中添加了必要的包。
本地一切都很好。我通过 Git 构建/清理/重建并提交整个解决方案并推送到 AppHarbor。所有未触及 SQL CE 的页面都按预期工作。当我尝试加载与 SQL CE 对话的页面时,我看到了附加的异常:
以下是我安装的包:
下面是我的 Bin 目录的样子:
【问题讨论】:
您可能想参考我们提供的示例:github.com/appharbor/AppHarbor-SQLServerCEUnitTesting-Sample 【参考方案1】:我也无法让这个工作,我花了很长时间尝试。我最终只是切换到了 AppHarbor 支持的正确 SQL Server(因为在 App_Data 文件夹中使用 SqlCompact 无论如何都是危险的)。
【讨论】:
这里同样切换到他们托管的 SQL Server。另外,无论如何它都会在新提交时被吹走。不过感谢您的回复。 是的,不仅仅是一个新的提交,而且如果实例死亡,或者如果第二个实例启动,你最终会得到两个数据库! ://【参考方案2】:SQL server CE 可以在 AppHarbor 上运行,尽管出于 Danny Tuppeny 提到的原因,我们不建议使用它。 This support case 包含工作代码。
【讨论】:
【参考方案3】:我有 same problem 与 Asp.net。以下是我的解决方法:
问题是权限问题。当前应用程序池的身份 IWAM_plesk(默认)无权访问 SQL Server Compact 4.0 文件夹:
C:\Program Files\Microsoft SQL Server Compact Edition\v4.0
C:\Program Files (x86)\Microsoft SQL Server Compact Edition\v4.0
我刚刚授予读取和执行和列出文件夹内容权限,现在它就像一个魅力。
【讨论】:
以上是关于SQL CE 部署 - AppHarbor - 无法加载 SQL Server Compact 的本机组件的主要内容,如果未能解决你的问题,请参考以下文章
如何在 AppHarbor 上接受 CORS AJAX 请求?
在 appharbor 上构建 web 服务时无法找到 nuget.exe
尝试在 AppHarbor 上查看我的 MVC4 应用程序时出现 403 错误(禁止)
将 SQL CE 4 部署到 IIS 7 - 需要特殊权限?