Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/258.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何使用quickfix从securitylist获取符号?_C#_.net_Quickfix_Fix Protocol - Fatal编程技术网

C# 如何使用quickfix从securitylist获取符号?

C# 如何使用quickfix从securitylist获取符号?,c#,.net,quickfix,fix-protocol,C#,.net,Quickfix,Fix Protocol,我正在发送一个SecurityListRequest,我正在收到确认。我无法从响应中获取符号。我得到了这样的回应 8=FIXT.1.1|9=795|35=y|34=3|49=TMATCH=YYYYY|52=20160804-09:39:56.534|56=zzzzz|320=0001|322=zzzz->zzzzx|393=19|560=0|893=Y| 146=2| 55=xxxxx|48=xxxxx|22=8|167=xxxx|762=PERIOD|15=xxx|423=1

我正在发送一个SecurityListRequest,我正在收到确认。我无法从响应中获取符号。我得到了这样的回应

8=FIXT.1.1|9=795|35=y|34=3|49=TMATCH=YYYYY|52=20160804-09:39:56.534|56=zzzzz|320=0001|322=zzzz->zzzzx|393=19|560=0|893=Y|
  146=2|
    55=xxxxx|48=xxxxx|22=8|167=xxxx|762=PERIOD|15=xxx|423=1|20000=1W|
    55=xxxx|48=xxxxx|22=8|167=xxxx|762=PERIOD|15=xxx|423=1|20000=1M|
10=234
我试着变成这样

QuickFix.FIX50.SecurityList.NoRelatedSymGroup symbolGroup
  = new QuickFix.FIX50.SecurityList.NoRelatedSymGroup();

int noofsymbols = m.Get(new NoRelatedSym()).getValue();

symbolGroup.Get(new Symbol());


每次它都会为标记55抛出“未找到字段”的异常。

您创建了一个新的空
norrelatedSymgroup
对象,但您忘了从消息中填充它

我想你是用C++的包装器使用C++ QF,所以这可能是你想要的代码:

var sym1 = new Symbol();
var sym2 = new Symbol();

m.getGroup(1, symbolGroup); // first group
symbolGroup.get(sym1);

m.getGroup(2, symbolGroup); // second group
symbolGroup.get(sym2);

我固定了你的语法和消息格式,以便我可以真正阅读它。这是QuickFIX /N(原生C)还是普通C++ Quebug与蹩脚的C包装?这是Quickfix /N(C),这是很好的符号,那么我如何才能得到用户定义的标签组成的小组…我像这样累了,但它显示了异常,作为标记2000未定义的字段……var tenor=newstringfield(20000);symbolGroup.GetField(主题语);QF/n站点有关于如何扩展DD以接受自定义字段的文档。如果此答案对您有所帮助,请在您有时间时将其视为正确。
m.getfield(new stringfield(55));
var sym1 = new Symbol();
var sym2 = new Symbol();

m.getGroup(1, symbolGroup); // first group
symbolGroup.get(sym1);

m.getGroup(2, symbolGroup); // second group
symbolGroup.get(sym2);