メッセージを作成するために、(C++ DLL ラッパーを使用して) .Net の QuickFix エンジンと戦っていTradeCaptureReportRequest
ます。
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
を呼び出すまではすべて問題ないように見えますが、これにより、 「NoDates を NoDates に変換できません」req.set(nodates)
というコンパイラ エラーが発生します。
QuickFix dll 内の TradeCaptureRequest のメタデータに移動すると、これが表示されるので、これは私の頭を悩ませます。
public void set(NoDates value);
// as a member of QuickFix44.TradeCaptureReportRequest
NoDates の定義に移動すると、QuickFix44.TradeCaptureReportRequest.NoDates
クラス内で定義されたクラスに送られますQuickFix44.TradeCaptureReportRequest
。
ただし、名前空間NoDates
内にクラスが定義されてQuickFix
おり、次のようにすると問題なくコンパイルされます。
req.set(new QuickFix.NoDates(1));
私は Quickfix v4.0.30128 と C++ DLL の .Net ラッパーを使用しています。