我有一个正在工作的网站,我正在为我的数据库使用 Sql compact 4 sp1
我在我的电脑上安装了 sql compact,它工作正常,但是我在尝试将站点部署到主机时遇到问题。
我已经安装了 nuget 包“Microsoft.SqlServer.Compact”并验证了它在我的 bin 文件夹中创建的 x86 和 amd64 目录已部署
但是,当我尝试访问该网站时,出现以下错误
不是有效的Win32应用程序。(来自 HRESULT 的异常:0x800700C1)
并且堆栈跟踪的开头读取
[BadImageFormatException: 不是有效的 Win32 应用程序。(来自 HRESULT 的异常:0x800700C1)]
System.Runtime.InteropServices.Marshal.ThrowExceptionForHRInternal(Int32 errorCode,IntPtr errorInfo)+0
System.Data.SqlServerCe.UnmanagedLibraryHelper..ctor(字符串文件名)+53 System.Data.SqlServerCe.NativeMethodsHelper。 .ctor(字符串模块路径)+28
System.Data.SqlServerCe.NativeMethods.LoadValidLibrary(字符串模块路径)+372
我发现一个建议说我应该进入 iis,找到应用程序,进入高级设置并检查启用 32 位应用程序,我没有这样做,因为我目前无法访问服务器,但这真的有必要吗? sql ce 有 x86 和 x64 dll,为什么它需要在 32 位模式下运行?