我正在使用Web API和实体框架。最初我的连接字符串在web.config文件中。 Web API托管在IIS服务器中。连接字符串将由实用程序加密(可执行文件未知可能是第三方),因此当连接字符串将在web.config中加密时,API将再次重新启动,我们不想重新启动API。
我可以将所有设置保存在app.config而不是web.config中,以避免重新启动Web API或注册表是保持连接字符串超过配置文件的不错选择吗?
我在app.config中使用了以下代码读取连接字符串。
string codeBase = System.Reflection.Assembly.GetExecutingAssembly().CodeBase;
UriBuilder uri = new UriBuilder(codeBase);
string path = Uri.UnescapeDataString(uri.Path);
string configPath = Path.Combine(Path.GetDirectoryName(path), "database.config");
if (File.Exists(configPath))
{
var configMap = new ExeConfigurationFileMap
{
ExeConfigFilename = configPath
};
Configuration config = ConfigurationManager.OpenMappedExeConfiguration(configMap, ConfigurationUserLevel.None);
string connectionString = config.ConnectionStrings.ConnectionStrings["DatabaseContext"].ToString();
}
请建议。