Exemple #1
0
        static async Task Main()
        {
            Console.Title = "Samples.SqlServer.MultiInstanceBridge";

            #region BridgeConfiguration

            var bridgeConfig =
                Bridge.Between <SqlServerTransport>("Bridge-Sender",
                                                    t => t.ConnectionString(SenderConnectionString))
                .And <SqlServerTransport>("Bridge-Receiver",
                                          t => t.ConnectionString(ReceiverConnectionString));

            bridgeConfig.AutoCreateQueues();
            bridgeConfig.UseSubscriptionPersistece <SqlPersistence>((e, p) =>
            {
                p.ConnectionBuilder(() => new SqlConnection(BridgeConnectionString));
                p.SqlDialect <SqlDialect.MsSqlServer>();
                p.SubscriptionSettings().DisableCache();
            });

            #endregion

            SqlHelper.EnsureDatabaseExists(SenderConnectionString);
            SqlHelper.EnsureDatabaseExists(ReceiverConnectionString);
            SqlHelper.EnsureDatabaseExists(BridgeConnectionString);

            var bridge = bridgeConfig.Create();

            await bridge.Start().ConfigureAwait(false);

            Console.WriteLine("Press any key to exit");
            Console.ReadKey();

            await bridge.Stop().ConfigureAwait(false);
        }
        static async Task Main()
        {
            Console.Title = "Samples.SqlServer.MultiInstanceBridge";

            #region BridgeConfiguration

            var bridgeConfig =
                Bridge.Between <SqlServerTransport>("Bridge-Sender",
                                                    t => t.ConnectionString(SenderConnectionString))
                .And <SqlServerTransport>("Bridge-Receiver",
                                          t => t.ConnectionString(ReceiverConnectionString));

            bridgeConfig.AutoCreateQueues();
            var storage = new SqlSubscriptionStorage(
                connectionBuilder: () => new SqlConnection(BridgeConnectionString),
                tablePrefix: "",
                sqlDialect: new SqlDialect.MsSqlServer(),
                cacheFor: null);

            //Ensures all required schema objects are created
            await storage.Install().ConfigureAwait(false);

            bridgeConfig.UseSubscriptionPersistence(storage);

            #endregion

            SqlHelper.EnsureDatabaseExists(SenderConnectionString);
            SqlHelper.EnsureDatabaseExists(ReceiverConnectionString);
            SqlHelper.EnsureDatabaseExists(BridgeConnectionString);

            var bridge = bridgeConfig.Create();

            await bridge.Start().ConfigureAwait(false);

            Console.WriteLine("Press any key to exit");
            Console.ReadKey();

            await bridge.Stop().ConfigureAwait(false);
        }