【问题标题】:How to read web.config from Web service instead Web.config from Web app如何从 Web 服务读取 web.config 而不是从 Web 应用程序读取 Web.config
【发布时间】:2010-11-09 17:58:36
【问题描述】:

问题很简单,我有一个调用网络服务的网络应用程序。两者都有自己的 web.config。

我遇到的问题是我想读取属于 Web 服务的 web.config,但是当我在实际的 Web 服务代码上执行此操作时,正在读取的 web.config 是属于网络应用程序。 我认为这是由于应用程序域,我的意思是,因为 Web 应用程序正在调用 Web 服务。 这是我放在网络服务上的代码: System.Configuration.ConfigurationManager.AppSettings["name_connectionString"].ToString()

它返回 null 因为是从 web 应用程序读取 web.config,而不是从 web 服务读取 web.config。

有人知道我该怎么做吗?我暂时没有找到任何线索

谢谢

编辑:我的解决方案仍然驻留在 Visual Studio 中。它由以下组成: - 包含网络参考的网站 - 网络服务 - 由 Web 服务调用以从数据库中读取数据的类库

是否有可能因为它们位于同一个虚拟目录/应用程序(例如:Visual Studio)下,所以总是从 Web 应用程序读取 web.config?

【问题讨论】:

  • 我认为你应该澄清你的解决方案是如何设置的。
  • 我已经编辑了这个问题,也许现在我的问题更清楚了

标签: asp.net-mvc web-services


【解决方案1】:

如果它们位于相同的虚拟目录/应用程序下,它们将始终使用相同的文件。

【讨论】:

  • 目前我的解决方案位于 Visual Studio 中。它由以下组成:
  • 目前我的解决方案位于 Visual Studio 中。它由以下组成:
  • 然后我明白如果我在 Visual Studio 中执行这种场景,则无法读取 Web 服务 web.config,因为机器人 Web 应用程序和 Web 服务位于同一个虚拟目录/应用程序下.我说的对吗?
  • @user354427:如果我理解正确(出于某种原因),您想从您的网络应用程序调用您的网络服务,而网络服务位于同一个地方。是的,应该很有可能,所有配置都将存在于 web.config 中。您可能必须从任一项目中删除其中一个 Global HttpApplication 类才能使它们愉快地生活在一起。
【解决方案2】:

每个应用程序只能有一个 web.config。因此,如果您的服务有单独的 web.config,您可能需要设置一个返回所需值的 Web 方法并从您的应用程序中调用此 Web 方法。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-05-25
    • 2010-12-26
    • 1970-01-01
    • 1970-01-01
    • 2014-09-15
    相关资源
    最近更新 更多