Mat*_*olf 6 c# quickfix fix-protocol
Quickfix/n 1.4 中提取此处定义的消息类型的最有效方法是什么:http : //www.fixprotocol.org/FIXimate3.0/en/FIX.5.0SP2/messages_sorted_by_type.html
我目前使用var msgType = Message.GetMsgType(message.ToString());
结果为“A”的登录消息。有没有更好的办法?我尝试确定其中的消息类型ToAdmin(...)
以捕获传出的登录请求消息,以便我可以添加用户名和密码。
我很想通过 MessageCracker 来做到这一点,但到目前为止,我还没有找到一种方法来实现捕获所有剩余消息类型,以防我没有实现所有 OnMessage 重载。(请参阅相关问题:Quickfix,是否有“全能”方法 OnMessage 来处理未由重载方法处理的传入消息?)。
谢谢
不是你的标题问题,而是其中的一个关键部分:
我尝试确定 ToAdmin(...) 中的消息类型,以便捕获传出的登录请求消息,以便我可以添加用户名和密码。
下面是一段代码,它几乎钉住了它(摘自这篇文章到 QF/n 邮件列表):
public void ToAdmin(Message message, SessionID sessionID)
{
// Check message type
if (message.Header.GetField(Tags.MsgType) == MsgType.LOGON)
{
// Yes it is logon message
// Check if local variables YourUserName and YourPassword are set
if (!string.IsNullOrEmpty(YourUserName) && !string.IsNullOrEmpty(YourPassword))
{
// Add Username and Password fields to logon message
((Logon) message).Set(new Username(YourUserName));
((Logon) message).Set(new Password(YourPassword));
}
}
}
Run Code Online (Sandbox Code Playgroud)