下面是错误的屏幕截图:

错误本身是:
指定的命名连接在配置中找不到,不打算与EntityClient提供程序一起使用,或者无效。
转到同一个项目的app.config文件,我可以找到:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<connectionStrings>
<add name="DocumentsEntities" connectionString="metadata=res://*/Documents.csdl|res://*/Documents.ssdl|res://*/Documents.msl;provider=System.Data.SQLite;provider connection string='data source="D:\Programming Projects\Desktop Applications\C#\DocumentScanner\DAL\Documents.sqlite"'" providerName="System.Data.EntityClient" />
</connectionStrings>
</configuration>连接字符串确实存在,但我得到了这个错误。
我正在使用SQLite和.NET Framework3.5。
有什么建议吗?
发布于 2010-10-31 19:56:29
你看到这个答案了吗?有用吗?
http://social.msdn.microsoft.com/forums/en-US/adodotnetentityframework/thread/f5904b4d-b2f8-421e-90de-339f93959533/
引用:
--我唯一的猜测是,app.config不在执行文件所在的二进制目录中。请执行以下操作: 1.直观地验证具有预期内容的app.config是否位于编译exe的目录中。(仅在项目根目录中存在是不够的。) 2.在应用程序中使用System.Configuration.ConfigurationManager检查app.config的内容。我还查看了连接字符串的内容,可以说它可能在多项目环境中无法工作(除非您在每个项目中复制了EDM )。其原因是“。”解析到从其中加载exe的目录。如果您想重用相同的EDM,您至少必须在路径中后退几步,然后导航到EDM所在的项目,例如“......\Proj1\AdventureWorksModel”。此外,您还可以考虑使用{##**$$}}-当您加载一个AppDomain时,您可以设置为指向EDM所在的确切目录,然后在连接字符串中使用它。
“\AdventureWorksModel”。如果您正在处理一个ASP.NET项目,您可以使用“~”来表示项目根。在后一种情况下,您不能引用项目层次结构之外的模型。
Zlatko Michailov项目经理
数据可编程运行时微软公司
https://stackoverflow.com/questions/4064814
复制相似问题