diff --git a/Signum.Engine/Signum.Engine.csproj b/Signum.Engine/Signum.Engine.csproj
index 7226e09438..76c91385ce 100644
--- a/Signum.Engine/Signum.Engine.csproj
+++ b/Signum.Engine/Signum.Engine.csproj
@@ -16,18 +16,11 @@
-
+
-
-
-
-
-
-
-
diff --git a/Signum.Entities/Signum.Entities.csproj b/Signum.Entities/Signum.Entities.csproj
index ca451d8f18..808393a865 100644
--- a/Signum.Entities/Signum.Entities.csproj
+++ b/Signum.Entities/Signum.Entities.csproj
@@ -1,5 +1,5 @@
-
+
netcoreapp3.0
preview
@@ -10,26 +10,20 @@
NU1605
-
-
+
+
-
+
-
+
PreserveNewest
-
-
-
-
-
-
diff --git a/Signum.React/Filters/SignumFilters.cs b/Signum.React/Filters/SignumFilters.cs
index 7204837cf2..a39195e968 100644
--- a/Signum.React/Filters/SignumFilters.cs
+++ b/Signum.React/Filters/SignumFilters.cs
@@ -3,11 +3,13 @@
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.Filters;
using Microsoft.AspNetCore.Mvc.Routing;
+using Microsoft.AspNetCore.WebUtilities;
using Signum.Entities.Basics;
using Signum.Utilities;
using System;
using System.Collections.Generic;
using System.Globalization;
+using System.Threading.Tasks;
namespace Signum.React.Filters
{
@@ -160,7 +162,7 @@ public static string Action(this UrlHelper helper, string action, object valu
}
}
- public abstract class SignumDisposableResourceFilter : IResourceFilter
+ public abstract class SignumDisposableResourceFilter : IAsyncResourceFilter
{
public string ResourceKey;
@@ -171,18 +173,10 @@ public SignumDisposableResourceFilter(string key)
public abstract IDisposable? GetResource(ResourceExecutingContext context);
- public void OnResourceExecuting(ResourceExecutingContext context)
- {
- context.HttpContext.Items[ResourceKey] = GetResource(context);
- }
-
- public void OnResourceExecuted(ResourceExecutedContext context)
+ public async Task OnResourceExecutionAsync(ResourceExecutingContext context, ResourceExecutionDelegate next)
{
- if (context.HttpContext.Items.TryGetValue(ResourceKey, out object? result))
- {
- if (result != null)
- ((IDisposable)result).Dispose();
- }
+ using (GetResource(context))
+ await next();
}
}
}
diff --git a/Signum.React/Signum.React.csproj b/Signum.React/Signum.React.csproj
index 9ece88b5ea..3d192f1841 100644
--- a/Signum.React/Signum.React.csproj
+++ b/Signum.React/Signum.React.csproj
@@ -33,8 +33,8 @@
-
-
+
+
runtime; build; native; contentfiles; analyzers
all
diff --git a/Signum.Test/Signum.Test.csproj b/Signum.Test/Signum.Test.csproj
index 338ab95bcc..8a7242a4ba 100644
--- a/Signum.Test/Signum.Test.csproj
+++ b/Signum.Test/Signum.Test.csproj
@@ -16,10 +16,10 @@
-
-
-
-
+
+
+
+