MVC 5应用程序设置

本文关键字:设置 应用程序 MVC | 更新日期: 2023-09-27 18:15:32

所以我想在应用程序中存储一些设置,我只能从中读取(我认为这就是我的想法)。

如何注入阅读器,我不完全确定如何首先读取应用程序设置,或者它是否已经有一个要注入的接口。

我要么想要这样的东西:

public interface IPropertyService
{
    string ReadProperty(string key);
}

,然后实现:

public class DefaultPropertyService : IPropertyService
{
    public string ReadProperty(string key)
    {
        // what ever code that needs to go here
        // to call the application settings reader etc.
        return ApplicationSetting[key];
    }
}

任何关于这个问题的帮助都会很好

MVC 5应用程序设置

您打算在哪里存储您的应用程序设置?执行Web的appSettings部分。配置不够?

<appSettings>
  <add key="someSetting" value="SomeValue"/>
</appSettings>

然后这样读取你的设置

ConfigurationManager.AppSettings["someSetting"]

你的想法是对的,你基本上做到了。对于web,配置设置保存在AppSettings节点下的Web.Config中。您可以使用ConfigurationManager.AppSettings在代码中访问这些。下面是一个可注入服务的示例实现,它访问config.

public interface IPropertyService {
    string ReadProperty(string key);
    bool HasProperty(string key);
} // end interface IPropertyService
public class WebConfigurationPropertyService : IPropertyService {
    public WebConfigurationPropertyService() {
    } // end constructor
    public virtual bool HasProperty(string key) {
        return !String.IsNullOrWhiteSpace(key) && ConfigurationManager.AppSettings.AllKeys.Select((string x) => x).Contains(key);
    } // end method HasProperty
    public virtual string ReadProperty(string key) {
        string returnValue = String.Empty;
        if(this.HasProperty(key)) {
            returnValue = ConfigurationManager.AppSettings[key];
        } // end if
        return returnValue;
    } // end method ReadProperty
} // end class WebconfigurationPropertyService