我目前正在将 IConfigFileSettings 的具体 ConfigFileSettings 注入到需要连接字符串名称的类中。简化的代码如下所示:
public interface IConfigFileSettings
{
string GetConnectionString(string name);
}
public class ConfigFileSettings : IConfigFileSettings
{
public string GetConnectionString(string name)
{
return ConfigurationManager.ConnectionStrings[name].Name;
}
}
这适用于托管在 iis、windows 服务和控制台应用程序中的 webapi。我猜:
ConfigurationManager.ConnectionStrings[name].Name
不会在工人角色中工作。我可以调整 GetConnectionString 方法以使其在所有环境中透明地工作吗?此外,即使我获得了连接字符串名称(例如,来自 .cscfg 文件),我的代码也会查找:
<connectionStrings> ... </connectionStrings>
我想我不能只在 .cscfg 文件中添加一个条目?