Entity framework DLL的实体框架和SQL CE专用部署

Entity framework DLL的实体框架和SQL CE专用部署,entity-framework,sql-server-ce,add-in,autodesk,Entity Framework,Sql Server Ce,Add In,Autodesk,我们的软件用作Autodesk Inventor的附加模块。这意味着我们的应用程序(由DLL组成)文件夹与EXE完全分离 问题在于实体框架试图加载SQLCE提供程序,该提供程序私下安装在应用程序中其他DLL的旁边。在未安装SQL CE的计算机上运行应用程序时,我遇到以下错误: System.ArgumentException: Unable to find the requested .Net Framework Data Provider. It may not be installed.

我们的软件用作Autodesk Inventor的附加模块。这意味着我们的应用程序(由DLL组成)文件夹与EXE完全分离

问题在于实体框架试图加载SQLCE提供程序,该提供程序私下安装在应用程序中其他DLL的旁边。在未安装SQL CE的计算机上运行应用程序时,我遇到以下错误:

System.ArgumentException: Unable to find the requested .Net Framework Data Provider.  It may not be installed.
at System.Data.Entity.Infrastructure.SqlCeConnectionFactory.CreateConnection(String nameOrConnectionString)
at System.Data.Entity.Internal.LazyInternalConnection.Initialize()
at System.Data.Entity.Internal.LazyInternalConnection.get_ProviderName()
at System.Data.Entity.Internal.LazyInternalContext.InitializeContext()
at System.Data.Entity.Internal.InternalContext.GetEntitySetAndBaseTypeForType(Type entityType)
at System.Data.Entity.Internal.Linq.InternalSet`1.Initialize()
at System.Data.Entity.Internal.Linq.InternalSet`1.get_InternalContext()
at ...
如果我将所有SQL CE安装文件复制到Inventor的bin文件夹(主EXE旁边),则一切正常,但这不是一个选项

我已经调查了一些主题,建议修改app.config,指定不同的提供者。它们都类似于和。但对我来说不起作用。app.config修改不能帮助我指定提供程序的位置,即使指定了,修改配置也不是一个选项(除非我可以有单独的配置)


这可能吗?我想指定安装文件夹的位置,以便Entity Framework可以在那里查找SQL CE提供程序。

我认为这是不可能的,您必须使用提供程序注册更新主.exe配置文件,或者安装SQL CE MSI