我正在 Windows Azure 模拟器中运行一个 Web 项目,但未加载 web.config。我正在作为完整的 IIS 应用程序运行,在 dev Fabric 启动后,我可以转到在 IIS 中运行的应用程序,浏览到文件位置,并验证文件夹中确实存在正确的 web.config。
当我运行应用程序时,没有加载任何标准 appSetting 键、配置或企业库配置。我可用的所有数据都是从 machine.config 中提取的。
我已经通过查看配置管理器数据、conn 字符串集合验证了这一点,并且有很多关于无法访问我的数据库的错误,因为默认值不存在,唯一的 conn 字符串是本地 sql express 服务器信息机器配置。
当角色处于启动状态时,您通常无法访问 web.config,因为它正在另一个进程中运行。角色属性上的角色设置(右键单击您的角色并选择属性,然后选择设置选项卡)是您应该进行角色设置的位置,您可以从角色代码中访问这些设置,如下所示:
RoleEnvironment.GetConfigurationSettingValue("MySetting")
如果你仍然想使用你的 web.config 你might可以通过首先右键单击 web.config 并选择“如果较新则复制”来执行此操作,这将复制web.config
to the System.Environment.CurrentDirectory
这是所有其他角色聚集的地方。然后你可以使用XML阅读器加载它并自己解析它,我不认为WebConfigurationManager
会帮助你,因为它需要一个虚拟路径,所以我怀疑你必须自己解析它。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)