azure - 部署时组合的 Azure Web 角色和辅助角色项目看不到 app.config

标签 azure app-config

我正在实现组合的 Web/ worker 角色场景,如 here 中所述。您只需将以下内容添加到您的辅助角色中即可:

public override void Run()
{
    // This is a sample worker implementation. Replace with your logic.
    Trace.WriteLine("WorkerRole1 entry point called", "Information");
    while (true)
    {
        Thread.Sleep(10000);
        Trace.WriteLine("Working", "Information");
    }
}

正如帖子评论中所述,问题在于该工作进程无法读取 web.config,因此您必须添加 app.config。还值得注意的是,app.config 不会自动部署。

所以我的问题是如何配置我的项目以便部署app.config?

我已将 app.config 添加到我的项目中,将“构建操作”设置为“内容”和“始终复制”

这在模拟器中运行良好,但在部署到 Azure 时则不然。

注意:我注意到在模拟器中创建了一个projectname.dll.config,但在部署到Azure时却没有创建。 我正在使用 VS2010、Windows Azure Tools 2011

我知道有些人会建议使用 .cscfg 文件,但我的许多组件从 web.config/app.config 获取设置: Elmah、 transient 故障处理客户端、诊断、电子邮件等...

最佳答案

请仔细阅读this blog post 。它详细解释了具有完整 IIS 的 Windows Azure Web 角色中发生的情况。

您需要做的是添加一个 WaIISHost.exe.config 文件(复制到输出 = 始终复制)。并将您需要的所有配置放入该文件中。这是因为,您的代码 (RoleEntryPoint) 位于 WaIISHost.exe 进程中,而不是您的 pdojectName.dll 进程中。

关于azure - 部署时组合的 Azure Web 角色和辅助角色项目看不到 app.config,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12203765/

相关文章:

azure - 当我在管道上运行部署命令时,它失败并提示 MSI 未正确配置

azure - vscode azure 应用程序配置 403 禁止

c# - 如何使用 App.config 连接 C# 和 Db?

sql - 如何对 Synapse Analytics 无服务器 SQL 池中的行进行随机采样?

azure - 如何在运行时从 appsettings.json 读取 CRON 表达式?

azure - 使用共享访问签名查询 Azure 表返回未实现,但使用连接字符串可以工作

ios - 使用配置文件禁用声音

c# - 是否有可能在 .NET (C#) 中以编程方式从头开始创建 *.config 文件?

.net - 如何在 .NET 中的引用可执行文件中包含 App.config 信息?

c# - 如何在 app.config 中创建自定义配置部分?