C# 如何仅在数据访问层(.NET类库)中存储连接字符串

C# 如何仅在数据访问层(.NET类库)中存储连接字符串,c#,.net,entity-framework,windows-services,web-services,C#,.net,Entity Framework,Windows Services,Web Services,我得到了一个包含3个不同项目的解决方案,一个类库,一个Web服务和一个Windows服务 MySolution.DataAccessLayer类库 使用实体框架3.5访问数据库 MySolution.WebService Web服务 MySolution.WindowsService Windows服务 我的问题是a必须在我的Web服务/Windows服务配置文件中包含连接字符串才能使其工作 我已检查,并且在DataAccessLayer App.Config中有正确的连接字符串 为什么不使用它

我得到了一个包含3个不同项目的解决方案,一个类库,一个Web服务和一个Windows服务

MySolution.DataAccessLayer类库

使用实体框架3.5访问数据库

MySolution.WebService Web服务

MySolution.WindowsService Windows服务

我的问题是a必须在我的Web服务/Windows服务配置文件中包含连接字符串才能使其工作

我已检查,并且在DataAccessLayer App.Config中有正确的连接字符串


为什么不使用它?

它不会运行它,因为DLL加载在进程空间中。这意味着服务加载DLL,使用的是服务配置


换句话说,服务启动,加载属于它的配置文件,然后加载dataaccess DLL。由于它已经有了自己的配置,它不会进一步查找DLL配置。

它不会运行该配置,因为DLL加载在进程空间中。这意味着服务加载DLL,使用的是服务配置


换句话说,服务启动,加载属于它的配置文件,然后加载dataaccess DLL。由于它已经有了自己的配置,因此不会进一步查找DLL配置。

配置系统会查找正在运行的应用的app/web.config,而不管您在代码中的何处查找配置


类库在运行时并不关心它是否是类库/separate.dll,只需在app.config中查找正在运行的程序的配置,在一种情况下是Windows服务的配置,在另一种情况下是Web服务的配置。

配置系统会查找正在运行的应用的app/Web.config,而不管您在代码中的何处查找配置


类库并不关心它在运行时是否是类库/separate.dll,它只会在app.config中查找正在运行的程序的配置-在一种情况下是Windows服务的配置,在另一种情况下是Web服务的配置。

要添加,它是明确的应用程序配置-链接的DLL是一个库,而不是应用程序。要添加,它是明确的应用程序配置-链接的DLL是一个库,而不是应用程序。