public async Task UseConfiguredSchema() { if (!SupportsSchemas()) { Assert.Ignore(); } var endpointName = nameof(SaveWithNoCorrelation); var definition = new SagaDefinition( tableSuffix: "SagaWithNoCorrelation", name: "SagaWithNoCorrelation" ); DropAndCreate(definition, endpointName, null); DropAndCreate(definition, endpointName, schema); var id = Guid.NewGuid(); var schemaPersister = SetUp(endpointName, schema); var defaultSchemaPersister = SetUp(endpointName, null); var sagaData = new SagaWithNoCorrelation.SagaData { Id = id, OriginalMessageId = "theOriginalMessageId", Originator = "theOriginator", SimpleProperty = "PropertyValue", }; using (var connection = GetConnection()(null)) using (var transaction = connection.BeginTransaction()) using (var storageSession = new StorageSession(connection, transaction, false, null)) { await defaultSchemaPersister.Save(sagaData, storageSession, null).ConfigureAwait(false); } using (var connection = GetConnection()(schema)) using (var transaction = connection.BeginTransaction()) using (var storageSession = new StorageSession(connection, transaction, false, null)) { var result = (await schemaPersister.Get <SagaWithNoCorrelation.SagaData>(id, storageSession).ConfigureAwait(false)).Data; Assert.IsNull(result); } }
async Task <SagaWithNoCorrelation.SagaData> SaveWithNoCorrelationAsync(Guid id, string endpointName) { var sagaData = new SagaWithNoCorrelation.SagaData { Id = id, OriginalMessageId = "theOriginalMessageId", Originator = "theOriginator", SimpleProperty = "PropertyValue", }; var persister = SetUp(endpointName, schema); using (var connection = dbConnection()) using (var transaction = connection.BeginTransaction()) using (var storageSession = new StorageSession(connection, transaction, true, null)) { await persister.Save(sagaData, storageSession, null).ConfigureAwait(false); return((await persister.Get <SagaWithNoCorrelation.SagaData>(id, storageSession).ConfigureAwait(false)).Data); } }