Skip to content

Commit aef1f25

Browse files
authored
Merge pull request #207 from WeihanLi/dev
1.0.66
2 parents 649b8b9 + 1ca1d0d commit aef1f25

36 files changed

+384
-313
lines changed

Directory.Packages.props

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<ExtensionPackageVersion Condition="'$(TargetFramework)' == 'netstandard2.0' OR '$(TargetFramework)' == 'netstandard2.1' OR '$(TargetFramework)' == 'net6.0'">6.0.0</ExtensionPackageVersion>
66
<ExtensionPackageVersion Condition="'$(TargetFramework)' == 'net7.0'">7.0.0</ExtensionPackageVersion>
77
<ExtensionPackageVersion Condition="'$(TargetFramework)' == 'net8.0'">8.0.0</ExtensionPackageVersion>
8-
<ExtensionPackageVersion Condition="'$(TargetFramework)' == 'net9.0'">9.0.0-preview.4.24266.19</ExtensionPackageVersion>
8+
<ExtensionPackageVersion Condition="'$(TargetFramework)' == 'net9.0'">9.0.0-preview.5.24306.7</ExtensionPackageVersion>
99
</PropertyGroup>
1010
<ItemGroup>
1111
<PackageVersion Include="Microsoft.Extensions.Configuration" Version="$(ExtensionPackageVersion)" />
@@ -17,7 +17,7 @@
1717
<PackageVersion Include="System.Reflection.Emit" Version="4.7.0" />
1818
<PackageVersion Include="System.ComponentModel.Annotations" Version="5.0.0" />
1919
<PackageVersion Include="Newtonsoft.Json" Version="13.0.3" />
20-
<PackageVersion Include="Serilog" Version="3.1.1" />
20+
<PackageVersion Include="Serilog" Version="4.0.0" />
2121
</ItemGroup>
2222
<ItemGroup>
2323
<PackageVersion Include="Microsoft.NET.Test.Sdk" Version="17.9.0" />
@@ -31,10 +31,10 @@
3131
<PackageVersion Include="BenchmarkDotNet" Version="0.13.12" />
3232
</ItemGroup>
3333
<ItemGroup>
34-
<PackageVersion Include="Microsoft.EntityFrameworkCore" Version="8.0.5" />
35-
<PackageVersion Include="Microsoft.EntityFrameworkCore.InMemory" Version="8.0.5" />
36-
<PackageVersion Include="Microsoft.Extensions.ObjectPool" Version="8.0.5" />
37-
<PackageVersion Include="Serilog.Sinks.Console" Version="5.0.1" />
34+
<PackageVersion Include="Microsoft.EntityFrameworkCore" Version="8.0.6" />
35+
<PackageVersion Include="Microsoft.EntityFrameworkCore.InMemory" Version="8.0.6" />
36+
<PackageVersion Include="Microsoft.Extensions.ObjectPool" Version="8.0.6" />
37+
<PackageVersion Include="Serilog.Sinks.Console" Version="6.0.0" />
3838
<PackageVersion Include="System.Data.SqlClient" Version="4.8.6" />
3939
<PackageVersion Include="Dapper" Version="2.1.44" />
4040
</ItemGroup>

build/build.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
// Copyright (c) 2022-2023 Weihan Li. All rights reserved.
22
// Licensed under the Apache license version 2.0 http://www.apache.org/licenses/LICENSE-2.0
33

4-
var target = CommandLineParser.ArgValue(args, "target", "Default");
5-
var apiKey = CommandLineParser.ArgValue(args, "apiKey", "");
6-
var stable = CommandLineParser.ArgValue(args, "stable").ToBoolean();
7-
var noPush = CommandLineParser.ArgValue(args, "noPush").ToBoolean();
4+
var target = CommandLineParser.Val("target", "Default", args);
5+
var apiKey = CommandLineParser.Val("apiKey", "", args);
6+
var stable = CommandLineParser.Val("stable", null, args).ToBoolean();
7+
var noPush = CommandLineParser.Val("noPush", null, args).ToBoolean();
88
var branchName = EnvHelper.Val("BUILD_SOURCEBRANCHNAME", "local");
99

1010
var solutionPath = "./WeihanLi.Common.sln";

build/version.props

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
<PropertyGroup>
33
<VersionMajor>1</VersionMajor>
44
<VersionMinor>0</VersionMinor>
5-
<VersionPatch>65</VersionPatch>
5+
<VersionPatch>66</VersionPatch>
66
<VersionPrefix>$(VersionMajor).$(VersionMinor).$(VersionPatch)</VersionPrefix>
77
</PropertyGroup>
88
</Project>

samples/DotNetCoreSample/EventTest.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ public static async Task MainTest()
4141

4242
await eventBus.PublishAsync(new CounterEvent() { Counter = 1 });
4343
await eventBus.PublishAsync(new CounterEvent() { Counter = 2 });
44-
44+
4545
await eventBus.PublishAsync(new CounterEvent() { Counter = 3 }, new EventProperties()
4646
{
4747
TraceId = Guid.NewGuid().ToString()

src/Directory.Build.props

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@
1616
<!-- Optional: Build symbol package (.snupkg) to distribute the PDB containing Source Link -->
1717
<IncludeSymbols>true</IncludeSymbols>
1818
<SymbolPackageFormat>snupkg</SymbolPackageFormat>
19-
19+
<IsPackable>true</IsPackable>
2020
<PackageRequireLicenseAcceptance>false</PackageRequireLicenseAcceptance>
2121
<PackageReleaseNotes>https://github.com/WeihanLi/WeihanLi.Common/releases</PackageReleaseNotes>
2222
<PackageTags>$(PackageTags);WeihanLi</PackageTags>

src/WeihanLi.Common/DependencyResolver.cs

Lines changed: 8 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -50,23 +50,21 @@ public static void SetDependencyResolver(IServiceProvider serviceProvider)
5050

5151
private sealed class ServiceProviderDependencyResolver(ServiceProvider serviceProvider) : IDependencyResolver
5252
{
53-
private readonly ServiceProvider _serviceProvider = serviceProvider;
54-
5553
public object? GetService(Type serviceType)
5654
{
57-
return _serviceProvider.GetService(serviceType);
55+
return serviceProvider.GetService(serviceType);
5856
}
5957

6058
[RequiresUnreferencedCode("Calls WeihanLi.Common.DependencyInjectionExtensions.GetServices(Type)")]
6159
public IEnumerable<object> GetServices(Type serviceType)
6260
{
63-
return _serviceProvider.GetServices(serviceType);
61+
return serviceProvider.GetServices(serviceType);
6462
}
6563

6664
public bool TryInvokeService<TService>(Action<TService> action)
6765
{
6866
Guard.NotNull(action, nameof(action));
69-
using var scope = _serviceProvider.CreateScope();
67+
using var scope = serviceProvider.CreateScope();
7068
var service = scope.ServiceProvider.GetService<TService>();
7169
if (service is null)
7270
return false;
@@ -77,7 +75,7 @@ public bool TryInvokeService<TService>(Action<TService> action)
7775
public async Task<bool> TryInvokeServiceAsync<TService>(Func<TService, Task> action)
7876
{
7977
Guard.NotNull(action, nameof(action));
80-
using var scope = _serviceProvider.CreateScope();
78+
await using var scope = serviceProvider.CreateAsyncScope();
8179
var service = scope.ServiceProvider.GetService<TService>();
8280
if (service is null)
8381
return false;
@@ -167,23 +165,21 @@ public async Task<bool> TryInvokeServiceAsync<TService>(Func<TService, Task>? ac
167165

168166
private sealed class ServiceContainerDependencyResolver(IServiceContainer serviceContainer) : IDependencyResolver
169167
{
170-
private readonly IServiceContainer _rootContainer = serviceContainer;
171-
172168
public object? GetService(Type serviceType)
173169
{
174-
return _rootContainer.GetService(serviceType);
170+
return serviceContainer.GetService(serviceType);
175171
}
176172

177173
public IEnumerable<object> GetServices(Type serviceType)
178174
{
179-
return (IEnumerable<object>)Guard.NotNull(_rootContainer.GetService(typeof(IEnumerable<>).MakeGenericType(serviceType)));
175+
return (IEnumerable<object>)Guard.NotNull(serviceContainer.GetService(typeof(IEnumerable<>).MakeGenericType(serviceType)));
180176
}
181177

182178
public bool TryInvokeService<TService>(Action<TService> action)
183179
{
184180
Guard.NotNull(action, nameof(action));
185181

186-
using var scope = _rootContainer.CreateScope();
182+
using var scope = serviceContainer.CreateScope();
187183
var svc = scope.GetService(typeof(TService));
188184
if (svc is TService service)
189185
{
@@ -196,7 +192,7 @@ public bool TryInvokeService<TService>(Action<TService> action)
196192
public async Task<bool> TryInvokeServiceAsync<TService>(Func<TService, Task> action)
197193
{
198194
Guard.NotNull(action, nameof(action));
199-
using var scope = _rootContainer.CreateScope();
195+
using var scope = serviceContainer.CreateScope();
200196
var svc = scope.GetService(typeof(TService));
201197
if (svc is TService service)
202198
{

src/WeihanLi.Common/Event/DelegateEventHandler.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ public DelegateEventHandler(Action<TEvent> action)
1818
return Task.CompletedTask;
1919
};
2020
}
21-
21+
2222
public DelegateEventHandler(Action<TEvent, EventProperties> action)
2323
{
2424
Guard.NotNull(action);
@@ -34,7 +34,7 @@ public DelegateEventHandler(Func<TEvent, Task> func)
3434
Guard.NotNull(func);
3535
_func = (e, _) => func(e);
3636
}
37-
37+
3838
public DelegateEventHandler(Func<TEvent, EventProperties, Task> func)
3939
{
4040
_func = Guard.NotNull(func);

src/WeihanLi.Common/Event/EventBusExtensions.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ public static IEventBuilder AddEvents(this IServiceCollection services)
3030
services.TryAddSingleton<IEventQueue, EventQueueInMemory>();
3131
services.TryAddSingleton<IEventStore, EventStoreInMemory>();
3232
services.TryAddSingleton<IEventPublisher, EventQueuePublisher>();
33-
33+
3434
return new EventBuilder(services);
3535
}
3636

@@ -60,20 +60,20 @@ public static IEventBuilder RegisterEventHandlers(this IEventBuilder builder, Fu
6060
var handlerTypes = assemblies
6161
.Select(ass => ass.GetTypes())
6262
.SelectMany(t => t)
63-
.Where(t => !t.IsAbstract
63+
.Where(t => !t.IsAbstract
6464
&& typeof(IEventHandler).IsAssignableFrom(t)
6565
&& !(t.IsGenericType && t.GetGenericTypeDefinition() == typeof(DelegateEventHandler<>))
6666
);
6767
if (filter != null)
6868
{
6969
handlerTypes = handlerTypes.Where(filter);
7070
}
71-
71+
7272
foreach (var handlerType in handlerTypes)
7373
{
7474
foreach (var implementedInterface in handlerType.GetTypeInfo().ImplementedInterfaces)
7575
{
76-
if (implementedInterface.IsGenericType
76+
if (implementedInterface.IsGenericType
7777
&& typeof(IEventHandler<>) == implementedInterface.GetGenericTypeDefinition()
7878
)
7979
{

src/WeihanLi.Common/Event/EventHandler.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -33,13 +33,13 @@ public virtual Task Handle(object eventData, EventProperties properties)
3333
{
3434
case TEvent data:
3535
return Handle(data, properties);
36-
36+
3737
case JObject jObject:
3838
var @event = jObject.ToObject<TEvent>();
3939
if (@event != null)
4040
return Handle(@event, properties);
4141
break;
42-
42+
4343
case string eventDataJson:
4444
return Handle(eventDataJson.JsonToObject<TEvent>(), properties);
4545
}

src/WeihanLi.Common/Event/EventProperties.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33

44
namespace WeihanLi.Common.Event;
55

6-
public sealed class EventProperties: IEventBase
6+
public sealed class EventProperties : IEventBase
77
{
88
public DateTimeOffset EventAt { get; set; }
99
public string EventId { get; set; } = Guid.NewGuid().ToString();

0 commit comments

Comments
 (0)