2017-07-10 6 views
0

私は単純なIFindSagaを実装しましたが、SQL Persistence Saga Finding Logicの特定のソフトウェアドキュメントで提供されているのと同じ手順を参照して従いました。 「SynchronizedStorageSessionにはGetSagaDataの定義が含まれておらず、SynchronizedStorageSession型の最初の引数を受け入れる拡張メソッドGetSagaDataはありません(使用するディレクティブまたはアセンブリ参照がありません)。これを解決するために私を助けてください。単純なIFindSagaを実装する

は、これは私がIFindSaga

public class TrackerFind : IFindSagas<SagaData>.Using<ITrackerData> 
     { 
      public Task<SagaData> FindBy(ITrackerData message, SynchronizedStorageSession session, ReadOnlyContextBag context) 
      { 
       return session.GetSagaData<SagaData>(
        context: context, 
        whereClause: "JSON_VALUE(Data,'$.PaymentTransactionId') = @propertyValue", 
        appendParameters: (builder, append) => 
        { 
         var parameter = builder(); 
         parameter.ParameterName = "propertyValue"; 
         parameter.Value = message.TrackerID; 
         append(parameter); 
        }); 
      } 
     } 
+0

あなたはこれを以下の通りに実施している私のコードですか? https://github.com/Particular/docs.particular.net/blob/master/samples/saga/sql-sagafinder/SqlPersistence_2/EndpointSqlServer/OrderSagaFinder.cs –

+0

https://docs.particular.net/samples/saga/ sql-sagafinder/ すべての必要な参照はありますか? –

+0

NServiceBusドキュメントのコードスニペットには、このようなことを助けるための "Copy usings"オプションがあります。また、カスタムサーガファインダーはNServiceBusの非常に独創的な機能ですので、私たちは(特定のソフトウェアのために働いています)、カスタムサガファインダーを使用するための具体的なユースケースを聞くことに非常に興味があります。 PaymentTransactionIdを通常の相関プロパティーとして使用します。 –

答えて

-1

使用nuget

パッケージNServiceBus.Persistence.Sql

+0

そのパッケージは何を解決し、特別には? – rene

関連する問題