尝试在Azure网站上运行SQL Server CE,但我收到错误:
无法加载与版本8876的ADO.NET提供程序对应的SQL Server Compact的本机组件。安装正确版本的SQL Server Compact。有关更多详细信息,请参阅知识库文章974247
答案 0 :(得分:0)
您无法在Azure Web Sites上使用SQL Server CE。使用Azure网站,您必须使用外部数据库 - 例如Azure SQL Database或MySQL。
一般而言,对于云和任何云服务(IaaS,PaaS,SaaS),您永远不会依赖本地文件系统,而是将文件保存在持久存储上,例如Azure Blob存储。因此,您不能(不应)使用SQL Server CE等服务。
答案 1 :(得分:0)
这似乎有效:
将此块添加到global.asax
中application_start的顶部 string dest = AppDomain.CurrentDomain.SetupInformation.PrivateBinPath;
string src = AppDomain.CurrentDomain.SetupInformation.ApplicationBase + "SqlServerCE\\x86";
foreach (var file in Directory.GetFiles(src))
{
var fileinfo = new FileInfo(file);
string destpath = Path.Combine(dest, fileinfo.Name);
if (!File.Exists(destpath))
{
fileinfo.CopyTo(destpath);
}
}
注意:我对此解决方案不满意,但我无法弄清楚如何在部署时将文件放入bin文件夹。后期构建事件似乎不起作用。如果有人有更好的解决方案,请提出建议。