C# 项目已添加。输入字典:';主机名';正在添加的键:';主机名';在c中#

C# 项目已添加。输入字典:';主机名';正在添加的键:';主机名';在c中#,c#,ibm-mq,C#,Ibm Mq,我试图将消息推送到IBM MQ,但在添加主机名、通道和端口等属性时,当我继续调试而不停止时,会发现错误 项目已添加。字典中的键:正在添加的“主机名”键:c#中的“主机名”。 我已尝试验证如下: if (!MQEnvironment.properties.ContainsKey(strHost) && !MQEnvironment.properties.ContainsKey(intPort) && !MQEnvironment.properties.Contain

我试图将消息推送到IBM MQ,但在添加主机名、通道和端口等属性时,当我继续调试而不停止时,会发现错误

项目已添加。字典中的键:正在添加的“主机名”键:c#中的“主机名”。

我已尝试验证如下:

if (!MQEnvironment.properties.ContainsKey(strHost) && !MQEnvironment.properties.ContainsKey(intPort) && !MQEnvironment.properties.ContainsKey(strChannel))
                {

                    MQEnvironment.properties.Add("Hostname", strHost);
                    MQEnvironment.properties.Add("Port", intPort);
                    MQEnvironment.properties.Add("Channel", strChannel);
                    MQEnvironment.properties.Add(MQC.TRANSPORT_PROPERTY,MQC.TRANSPORT_MQSERIES);
                }

上面的代码包含在我推送消息的MQ PutMessage方法中

看起来不是已经存在的
strHost
,而是
“主机名”
。您需要将支票更改为:

MQEnvironment.properties.ContainsKey("HostName")

等等。

看起来已经存在的不是
strHost
,而是
“主机名”
。您需要将支票更改为:

MQEnvironment.properties.ContainsKey("HostName")

等等。

看起来已经存在的不是
strHost
,而是
“主机名”
。您需要将支票更改为:

MQEnvironment.properties.ContainsKey("HostName")

等等。

看起来已经存在的不是
strHost
,而是
“主机名”
。您需要将支票更改为:

MQEnvironment.properties.ContainsKey("HostName")
等等。

Yuk(对于未来的支持来说,这是一个头疼的问题)

  • 首先,MQEnvironment类是一个静态类,应该只用于超级简单的程序。IBMMQ最佳实践是使用哈希表

  • 其次,为什么不使用提供的MQ定义作为密钥名称?(这将消除打字错误)

  • 第三,您需要查看MQ知识中心,以获得“TRANSPORT_属性”的正确MQ.NET值。请看。MQ.NET有4个有效值:

MQC.TRANSPORT_MQSERIES_绑定-作为服务器连接 MQC.TRANSPORT_MQSERIES_客户端-作为非XA客户端连接 MQC.TRANSPORT_mqseriesxaclient-作为XA客户端连接 MQC.TRANSPORT_MQSERIES_MANAGED-作为非XA托管客户端连接

以下是正确的编码方法:

Hashtable qMgrProp = new Hashtable();
qMgrProp.Add(MQC.TRANSPORT_PROPERTY, MQC.TRANSPORT_MQSERIES_CLIENT);
qMgrProp.Add(MQC.HOST_NAME_PROPERTY, strHost);
qMgrProp.Add(MQC.PORT_PROPERTY, intPort);
qMgrProp.Add(MQC.CHANNEL_PROPERTY, strChannel);

MQQueueManager qMgr = new MQQueueManager(qMgrName, qMgrProp);
Yuk(对未来的支持来说是个头疼的问题)

  • 首先,MQEnvironment类是一个静态类,应该只用于超级简单的程序。IBMMQ最佳实践是使用哈希表

  • 其次,为什么不使用提供的MQ定义作为密钥名称?(这将消除打字错误)

  • 第三,您需要查看MQ知识中心,以获得“TRANSPORT_属性”的正确MQ.NET值。请看。MQ.NET有4个有效值:

MQC.TRANSPORT_MQSERIES_绑定-作为服务器连接 MQC.TRANSPORT_MQSERIES_客户端-作为非XA客户端连接 MQC.TRANSPORT_mqseriesxaclient-作为XA客户端连接 MQC.TRANSPORT_MQSERIES_MANAGED-作为非XA托管客户端连接

以下是正确的编码方法:

Hashtable qMgrProp = new Hashtable();
qMgrProp.Add(MQC.TRANSPORT_PROPERTY, MQC.TRANSPORT_MQSERIES_CLIENT);
qMgrProp.Add(MQC.HOST_NAME_PROPERTY, strHost);
qMgrProp.Add(MQC.PORT_PROPERTY, intPort);
qMgrProp.Add(MQC.CHANNEL_PROPERTY, strChannel);

MQQueueManager qMgr = new MQQueueManager(qMgrName, qMgrProp);
Yuk(对未来的支持来说是个头疼的问题)

  • 首先,MQEnvironment类是一个静态类,应该只用于超级简单的程序。IBMMQ最佳实践是使用哈希表

  • 其次,为什么不使用提供的MQ定义作为密钥名称?(这将消除打字错误)

  • 第三,您需要查看MQ知识中心,以获得“TRANSPORT_属性”的正确MQ.NET值。请看。MQ.NET有4个有效值:

MQC.TRANSPORT_MQSERIES_绑定-作为服务器连接 MQC.TRANSPORT_MQSERIES_客户端-作为非XA客户端连接 MQC.TRANSPORT_mqseriesxaclient-作为XA客户端连接 MQC.TRANSPORT_MQSERIES_MANAGED-作为非XA托管客户端连接

以下是正确的编码方法:

Hashtable qMgrProp = new Hashtable();
qMgrProp.Add(MQC.TRANSPORT_PROPERTY, MQC.TRANSPORT_MQSERIES_CLIENT);
qMgrProp.Add(MQC.HOST_NAME_PROPERTY, strHost);
qMgrProp.Add(MQC.PORT_PROPERTY, intPort);
qMgrProp.Add(MQC.CHANNEL_PROPERTY, strChannel);

MQQueueManager qMgr = new MQQueueManager(qMgrName, qMgrProp);
Yuk(对未来的支持来说是个头疼的问题)

  • 首先,MQEnvironment类是一个静态类,应该只用于超级简单的程序。IBMMQ最佳实践是使用哈希表

  • 其次,为什么不使用提供的MQ定义作为密钥名称?(这将消除打字错误)

  • 第三,您需要查看MQ知识中心,以获得“TRANSPORT_属性”的正确MQ.NET值。请看。MQ.NET有4个有效值:

MQC.TRANSPORT_MQSERIES_绑定-作为服务器连接 MQC.TRANSPORT_MQSERIES_客户端-作为非XA客户端连接 MQC.TRANSPORT_mqseriesxaclient-作为XA客户端连接 MQC.TRANSPORT_MQSERIES_MANAGED-作为非XA托管客户端连接

以下是正确的编码方法:

Hashtable qMgrProp = new Hashtable();
qMgrProp.Add(MQC.TRANSPORT_PROPERTY, MQC.TRANSPORT_MQSERIES_CLIENT);
qMgrProp.Add(MQC.HOST_NAME_PROPERTY, strHost);
qMgrProp.Add(MQC.PORT_PROPERTY, intPort);
qMgrProp.Add(MQC.CHANNEL_PROPERTY, strChannel);

MQQueueManager qMgr = new MQQueueManager(qMgrName, qMgrProp);

这也是
intPort
strChannel
的情况,也是
intPort
strChannel
的情况,也是
intPort
strChannel
的情况,也是
intPort
strChannel
从版本7.1开始的情况。NET客户端支持XA MQ管理模式下的事务。从7.1版开始,MQ.NET客户端也支持管理模式下的XA事务。从7.1版开始,MQ.NET客户端也支持管理模式下的XA事务。从7.1版开始,MQ.NET客户端也支持管理模式下的XA事务。