C# QuickFix'中的命名空间问题;Net DLL包装器 我正在与.NET中的QueFixEngin引擎(使用C++ DLL包装器)进行一个“ TraceCurrurePrEtRePixe>代码>消息:< /P> var req = new QuickFix44.TradeCaptureReportRequest(); req.set(new QuickFix.SubscriptionRequestType(QuickFix.SubscriptionRequestType.SNAPSHOT_PLUS_UPDATES)); // 263 req.set(new QuickFix.TradeRequestID("testing" + DateTime.Now.Second.ToString())); // 568 var nodates = new QuickFix44.TradeCaptureReportRequest.NoDates(); nodates.set(new QuickFix.TradeDate("20130201")); req.set(nodates); // 580

C# QuickFix'中的命名空间问题;Net DLL包装器 我正在与.NET中的QueFixEngin引擎(使用C++ DLL包装器)进行一个“ TraceCurrurePrEtRePixe>代码>消息:< /P> var req = new QuickFix44.TradeCaptureReportRequest(); req.set(new QuickFix.SubscriptionRequestType(QuickFix.SubscriptionRequestType.SNAPSHOT_PLUS_UPDATES)); // 263 req.set(new QuickFix.TradeRequestID("testing" + DateTime.Now.Second.ToString())); // 568 var nodates = new QuickFix44.TradeCaptureReportRequest.NoDates(); nodates.set(new QuickFix.TradeDate("20130201")); req.set(nodates); // 580,c#,.net-4.0,quickfix,C#,.net 4.0,Quickfix,在我调用req.set(nodates)之前,一切看起来都很好,这会导致编译器错误,说“nodates无法转换为nodates” 这让我难以置信,因为当我在QuickFix dll中导航到TradeCaptureRequest的元数据时,我看到了这一点 public void set(NoDates value); // as a member of QuickFix44.TradeCaptureReportRequest 如果我转到NoDates的定义,它会将我发送到QuickFix44.

在我调用
req.set(nodates)
之前,一切看起来都很好,这会导致编译器错误,说“nodates无法转换为nodates”

这让我难以置信,因为当我在QuickFix dll中导航到TradeCaptureRequest的元数据时,我看到了这一点

public void set(NoDates value);
 // as a member of QuickFix44.TradeCaptureReportRequest
如果我转到NoDates的定义,它会将我发送到
QuickFix44.TradeCaptureReportRequest.NoDates
类中定义的
QuickFix44.TradeCaptureReportRequest

但是,在
QuickFix
namespace中定义了一个
NoDates
类,当我执行以下操作时,该类的编译效果很好

req.set(new QuickFix.NoDates(1));
我使用QuxFixV4.0.30128和.cd+dll的.NET包装器。

如果你查看C++代码,你会发现它会像<代码> Quebug。
// line: 1993
public void set(QuickFix.NoDates value)
{ setField(value); }
因此,将您的C#更改为以下内容:

var nodates = new QuickFix.NoDates();
nodates.set(new QuickFix.TradeDate("20130201"));
req.set(nodates);

看起来,您在C++上使用了QueFix.NET包装器,这是.NET编程指南的一个讨厌之处。我强烈建议您切换到,它不那么可怕(但看起来仍然很可怕)。

您还没有说问题出在哪里。出现异常、编译器错误等?显然我可以做这样的事情,去想想。。。QuickFix44.TradeCaptureReportRequest.Nodeates Nodeates=新的QuickFix44.TradeCaptureReportRequest.Nodeates();nodates.set(新的QuickFix.TradeDate(“20130211”);请求添加组(节点状态);//75