diff --git a/Frameworks/MQTTnet.UniversalWindows/ServiceCollectionExtensions.cs b/Frameworks/MQTTnet.UniversalWindows/ServiceCollectionExtensions.cs index 9b8e6f7b..362df4dd 100644 --- a/Frameworks/MQTTnet.UniversalWindows/ServiceCollectionExtensions.cs +++ b/Frameworks/MQTTnet.UniversalWindows/ServiceCollectionExtensions.cs @@ -14,20 +14,27 @@ namespace MQTTnet public static class ServiceCollectionExtensions { public static IServiceCollection AddMqttServer(this IServiceCollection services) + { + services.AddMqttServerServices(); + + services.AddSingleton(s => s.GetService()); + services.AddSingleton(); + + return services; + } + + public static IServiceCollection AddMqttServerServices(this IServiceCollection services) { services.AddOptions(); services.AddSingleton(); - services.AddSingleton(); - services.AddSingleton(); - - - services.AddSingleton(); - services.AddSingleton(); + services.AddSingleton(s => s.GetService()); + services.AddSingleton(s => s.GetService()); services.AddTransient(); services.AddTransient(); services.AddTransient(); + services.AddTransient(); services.AddTransient(); return services; } @@ -42,7 +49,7 @@ namespace MQTTnet public static IServiceCollection AddMqttClient(this IServiceCollection services) { services.AddSingleton(); - services.AddSingleton(); + services.AddSingleton(s => s.GetService()); services.AddTransient(); services.AddTransient(); diff --git a/Tests/MQTTnet.TestApp.UniversalWindows/MainPage.xaml b/Tests/MQTTnet.TestApp.UniversalWindows/MainPage.xaml index fac1a6c5..f0031b8b 100644 --- a/Tests/MQTTnet.TestApp.UniversalWindows/MainPage.xaml +++ b/Tests/MQTTnet.TestApp.UniversalWindows/MainPage.xaml @@ -84,9 +84,14 @@ - - - + + Port: + + + + + + diff --git a/Tests/MQTTnet.TestApp.UniversalWindows/MainPage.xaml.cs b/Tests/MQTTnet.TestApp.UniversalWindows/MainPage.xaml.cs index 32ff9f94..76c0d073 100644 --- a/Tests/MQTTnet.TestApp.UniversalWindows/MainPage.xaml.cs +++ b/Tests/MQTTnet.TestApp.UniversalWindows/MainPage.xaml.cs @@ -329,7 +329,11 @@ namespace MQTTnet.TestApp.UniversalWindows return; } - _mqttServer = new MqttFactory().CreateMqttServer(); + _mqttServer = new MqttFactory().CreateMqttServer(o => + { + o.DefaultEndpointOptions.Port = int.Parse(ServerPort.Text); + }); + await _mqttServer.StartAsync(); }