【问题标题】:ASP.Net Web API : adding appSettingsASP.Net Web API:添加 appSettings
【发布时间】:2013-09-12 11:57:48
【问题描述】:

我正在将 Web 服务从 WCF 服务迁移到 ASP.Net Web API。当我尝试将以下部分添加到 web.config 时,当我尝试在本地运行应用程序时,我得到一个带有错误“内部服务器错误”的页面

<appSettings>
    <add key="Environment" value="production" />
    <add key="CacheEnabled" value="true" />
  </appSettings>

当我删除此部分时,错误消失了。 您能告诉我如何将 appSettings 添加到 Web API 项目吗?

【问题讨论】:

    标签: c# asp.net-mvc-4 asp.net-web-api


    【解决方案1】:

    您的appSettings 需要根据MSDN 文档进入configuration 元素下的Web.config:

    <configuration>
          <appSettings />
    </configuration>
    
    1. 确保它在正确的元素中
    2. 确保没有现有的appSettings 标签

    否则,您需要传递确切的错误消息。

    【讨论】:

    • appSettings 正在配置中,没有重复
    • 它在正确的 Web.config 中吗?根目录下有一个 Web.config,views 文件夹下有一个 Web.config
    • 啊!我不知道..我尝试过根目录中的那个并得到了错误。现在,当我尝试在 Views 中的一个时,我没有收到错误..但是,我也可以访问变量.. System.Configuration.ConfigurationManager.AppSettings[Setting] 返回 null。 (设置是持有key的变量)
    • 你确定根Web.config中没有现有的appSettings,因为默认情况下MVC有一个:)
    【解决方案2】:

    以下可以作为指导,验证您的 appSettings 是否在配置中

    <configuration>
      <appSettings>
        <add key="Key" value="Value"/>
      </appSettings>
    </configuration>
    

    要从应用程序中获取键的值,您可以这样做

    textBox1.Text = ConfigurationManager.AppSettings["Name"];
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-03-07
      • 2022-12-12
      • 1970-01-01
      • 2012-03-20
      • 1970-01-01
      • 2014-03-08
      相关资源
      最近更新 更多