首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >DLL的实体框架和SQL CE私有部署

DLL的实体框架和SQL CE私有部署
EN

Stack Overflow用户
提问于 2013-06-11 21:11:55
回答 1查看 248关注 0票数 0

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

问题出在Entity Framework试图加载SQL CE提供程序时,该提供程序是在我们的应用程序中的其余DLL旁边私自安装的。在未安装SQL CE的计算机上运行应用程序时,出现以下错误:

代码语言:javascript
复制
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文件夹(位于main EXE旁边),则一切正常,但这不是一个选项。

我已经研究了几个主题,建议修改app.config,指定不同的提供者。它们都类似于thisthat。但在我的情况下就行不通了。修改app.config并不能帮助我指定提供程序的位置,即使它指定了,也不能修改配置(除非我可以有一个单独的配置)。

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

EN

回答 1

Stack Overflow用户

发布于 2013-06-12 01:09:31

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

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17044980

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档