发布者-订阅者配置如何包含在单个 app.config 中?

Posted

技术标签:

【中文标题】发布者-订阅者配置如何包含在单个 app.config 中?【英文标题】:How publisher-subscriber configurations can be included in a single app.config? 【发布时间】:2011-02-08 18:08:39 【问题描述】:

我正在编写一个简单的服务器(发布者)和客户端(订阅者)应用程序来想象两个托管 C# 进程之间的进程间通信。

我需要编写一个服务器(作为发布者工作),它将根据其订阅和客户端(订阅者)将内容发布给订阅者。为此,我必须在发布者和订阅者端编写两个单独的配置文件 (app.config)。

它正在制造一个问题。当发布者想要发布数据时,它会使用Process.Start 语句启动进程(作为订阅者工作的客户端)。启动时,客户端进程无法初始化远程处理,因为它加载了在服务器端使用的app.config,它没有找到自己的配置(订阅者的配置)。

我需要在一个 app.config 文件中同时编写订阅者和发布者配置。

我该怎么做?

【问题讨论】:

【参考方案1】:

发布者和订阅者是否在同一个 exe 下运行?如果没有,那么您可以使用特定于应用程序的配置文件 (.config) 而不是“app.config”。

来自 MSDN:

可执行主机托管的应用程序的配置文件与应用程序位于同一目录中。配置文件的名称是应用程序的名称,扩展名为 .config。例如,名为 myApp.exe 的应用程序可以与名为 myApp.exe.config 的配置文件相关联。

您可以将连接信息放在这里,并为 Process.Start 指定 StartInfo,并确保您指定了应用程序的启动位置。这应该会强制它从该目录中的配置文件中读取。

【讨论】:

以上是关于发布者-订阅者配置如何包含在单个 app.config 中?的主要内容,如果未能解决你的问题,请参考以下文章

如果在应用引擎上提供的URL中找到灵活的配置,我如何配置我的nginx-app.conf文件来提供/index.php?

如何在解决方案中的项目之间共享单个配置?

如何在同一个表上组合两个查询以在 MySQL 中获得单个结果集

Beego Conf 文件配置解析

iOS 10.2 上的 Swift 3:如何从麦克风订阅单个样本?需要实时处理音频

SQL Server Replication—本地发布订阅配置