【问题标题】:Accessing webreference appSettings from Biztalk BTSNTSvc.exe.config从 Biztalk BTSNTSvc.exe.config 访问 webreference appSettings
【发布时间】:2010-02-24 09:26:19
【问题描述】:

有时我们在 Biztalk 配置 (BTSNTSvc.exe.config) 中使用全局变量,我们使用以下代码添加这些变量:

<appSettings>
    <!--<add key="ZNA_Integratie_Prestaties_OasisProxy_OasisServiceProxy_Service"
             value="http://localhost/service.asmx" />-->
    <add key="IPSdatum" value="20090101" />
  </appSettings>

使用以下 c# 代码我们可以读取值:

ConfigurationManager.AppSettings["IPSdatum"]

现在通常当我们向我们的 biztalk 项目添加 web 引用时,我们通过端口使用它们,但是我的一位同事使用了代码中的 webreference,因此将一个添加到 c# 类项目中,所以这意味着有一个 app.config 在哪里该地址正在保留。然而,当我们部署我们的项目时,当然没有app.config。只有BTSNTSvc.exe.config。我听说有一种方法可以向这个配置添加一个键值,它可以引用app.config 值。

谁能帮帮我?

【问题讨论】:

  • 正如您所提到的,理想情况下您应该在 BizTalk 中使用发送端口,而不是带有 Web 引用的自定义程序集,在这种情况下,配置将存储在绑定文件中。

标签: configuration reference biztalk


【解决方案1】:

选项 1:

BTSNTSvc.exe.config 文件是一个 .NET 配置文件,您可以将您在 app.config 文件中看到的内容放入 BTSNTSvc.exe.config 文件中的正确部分。

选项 2:

您可以使用应用程序域概念as explained here 引用来自BTSNTSvc.exe.config 文件的其他配置文件

如果您只处理少量条目,则选项 1 更可取。

更好的是,尽量不要在你的帮助类中使用内联网络引用,尽量避免这种情况。

【讨论】:

  • 是的,我知道,我从不做内联网络引用,它是在一个老同事的代码中,我们现在不能真正修改它。我喜欢选项1,我会试试看
  • 选项 1 工作正常,谢谢。最后我还是不得不删除它,因为使用这个服务没有做任何重试。因此,我花了一整天的时间使用 biztalk sendport 以应有的方式重写他的代码 :)
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-07-08
  • 2019-08-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-01-09
相关资源
最近更新 更多