Skip to content

Commit 61785e5

Browse files
authored
Merge pull request #107 from aspnetboilerplate/upgrade-to-abp-9-3
Upgraded ABP to version 9.3 and NuGet packages to latest version
2 parents 7305d24 + dc015a5 commit 61785e5

File tree

8 files changed

+115
-24
lines changed

8 files changed

+115
-24
lines changed

src/AbpCompanyName.AbpProjectName.Application/AbpCompanyName.AbpProjectName.Application.csproj

+2-2
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,8 @@
1717
</ItemGroup>
1818

1919
<ItemGroup>
20-
<PackageReference Include="Abp.EntityFrameworkCore" Version="9.2.2" />
21-
<PackageReference Include="Abp.AutoMapper" Version="9.2.2" />
20+
<PackageReference Include="Abp.EntityFrameworkCore" Version="9.3.0" />
21+
<PackageReference Include="Abp.AutoMapper" Version="9.3.0" />
2222
</ItemGroup>
2323

2424
</Project>

src/AbpCompanyName.AbpProjectName.Core/AbpCompanyName.AbpProjectName.Core.csproj

+1-1
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,7 @@
1717
</ItemGroup>
1818

1919
<ItemGroup>
20-
<PackageReference Include="Abp" Version="9.2.2" />
20+
<PackageReference Include="Abp" Version="9.3.0" />
2121
<PackageReference Include="Microsoft.Extensions.Configuration.EnvironmentVariables" Version="8.0.0" />
2222
<PackageReference Include="Microsoft.Extensions.Configuration.Json" Version="8.0.0" />
2323
</ItemGroup>

src/AbpCompanyName.AbpProjectName.EntityFrameworkCore/AbpCompanyName.AbpProjectName.EntityFrameworkCore.csproj

+5-5
Original file line numberDiff line numberDiff line change
@@ -27,15 +27,15 @@
2727
</ItemGroup>
2828

2929
<ItemGroup>
30-
<PackageReference Include="Abp.EntityFrameworkCore" Version="9.2.2" />
31-
<PackageReference Include="Microsoft.EntityFrameworkCore.Analyzers" Version="8.0.4" />
32-
<PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="8.0.4">
30+
<PackageReference Include="Abp.EntityFrameworkCore" Version="9.3.0" />
31+
<PackageReference Include="Microsoft.EntityFrameworkCore.Analyzers" Version="8.0.7" />
32+
<PackageReference Include="Microsoft.EntityFrameworkCore.Design" Version="8.0.7">
3333
<PrivateAssets>all</PrivateAssets>
3434
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
3535
</PackageReference>
36-
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="8.0.4" />
36+
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer" Version="8.0.7" />
3737
<PackageReference Include="Microsoft.EntityFrameworkCore.SqlServer.Design" Version="1.1.6" />
38-
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="8.0.4">
38+
<PackageReference Include="Microsoft.EntityFrameworkCore.Tools" Version="8.0.7">
3939
<PrivateAssets>all</PrivateAssets>
4040
<IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
4141
</PackageReference>

src/AbpCompanyName.AbpProjectName.Web/AbpCompanyName.AbpProjectName.Web.csproj

+4-4
Original file line numberDiff line numberDiff line change
@@ -33,16 +33,16 @@
3333
</ItemGroup>
3434

3535
<ItemGroup>
36-
<PackageReference Include="Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore" Version="8.0.4" />
36+
<PackageReference Include="Microsoft.AspNetCore.Diagnostics.EntityFrameworkCore" Version="8.0.7" />
3737
<PackageReference Include="System.Net.Primitives" Version="4.3.1" />
3838
<PackageReference Include="System.Net.NameResolution" Version="4.3.0" />
3939
<PackageReference Include="Castle.LoggingFacility.MsLogging" Version="3.1.0" />
4040
<PackageReference Include="Microsoft.Extensions.Logging" Version="8.0.0" />
4141
<PackageReference Include="Microsoft.Extensions.Options.ConfigurationExtensions" Version="8.0.0" />
42-
<PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Design" Version="8.0.2" />
42+
<PackageReference Include="Microsoft.VisualStudio.Web.CodeGeneration.Design" Version="8.0.3" />
4343
<PackageReference Include="Castle.Core" Version="5.1.1" />
44-
<PackageReference Include="Abp.AspNetCore" Version="9.2.2" />
45-
<PackageReference Include="Abp.Castle.Log4Net" Version="9.2.2" />
44+
<PackageReference Include="Abp.AspNetCore" Version="9.3.0" />
45+
<PackageReference Include="Abp.Castle.Log4Net" Version="9.3.0" />
4646
</ItemGroup>
4747

4848
<ItemGroup>
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,91 @@
1+
using System;
2+
using System.Globalization;
3+
using System.Linq;
4+
using Abp;
5+
using Abp.AspNetCore.Mvc.Controllers;
6+
using Abp.AspNetCore.Mvc.Extensions;
7+
using Abp.Auditing;
8+
using Abp.Extensions;
9+
using Abp.Timing;
10+
using Abp.Web.Models;
11+
using Microsoft.AspNetCore.Http;
12+
using Microsoft.AspNetCore.Localization;
13+
using Microsoft.AspNetCore.Mvc;
14+
using IUrlHelper = Abp.Web.Http.IUrlHelper;
15+
16+
namespace AbpCompanyName.AbpProjectName.Web.Controllers
17+
{
18+
public class LocalizationController : AbpController
19+
{
20+
private readonly IUrlHelper _urlHelper;
21+
22+
public LocalizationController(IUrlHelper urlHelper)
23+
{
24+
_urlHelper = urlHelper;
25+
}
26+
27+
[DisableAuditing]
28+
public virtual ActionResult ChangeCulture(string cultureName, string returnUrl = "")
29+
{
30+
if (!IsValidCultureCode(cultureName))
31+
{
32+
throw new AbpException("Unknown language: " + cultureName + ". It must be a valid culture!");
33+
}
34+
35+
var cookieValue = CookieRequestCultureProvider.MakeCookieValue(
36+
new RequestCulture(cultureName, cultureName)
37+
);
38+
39+
Response.Cookies.Append(
40+
CookieRequestCultureProvider.DefaultCookieName,
41+
cookieValue,
42+
new CookieOptions
43+
{
44+
Expires = Clock.Now.AddYears(2),
45+
HttpOnly = true
46+
}
47+
);
48+
49+
if (Request.IsAjaxRequest())
50+
{
51+
return Json(new AjaxResponse());
52+
}
53+
54+
if (string.IsNullOrWhiteSpace(returnUrl))
55+
{
56+
return LocalRedirect("/");
57+
}
58+
59+
var escapedReturnUrl = Uri.EscapeDataString(returnUrl);
60+
var localPath = _urlHelper.LocalPathAndQuery(escapedReturnUrl, Request.Host.Host, Request.Host.Port);
61+
if (!string.IsNullOrWhiteSpace(localPath))
62+
{
63+
var unescapedLocalPath = Uri.UnescapeDataString(localPath);
64+
if (Url.IsLocalUrl(unescapedLocalPath))
65+
{
66+
return LocalRedirect(unescapedLocalPath);
67+
}
68+
}
69+
70+
return LocalRedirect("/");
71+
}
72+
73+
private static bool IsValidCultureCode(string cultureCode)
74+
{
75+
if (cultureCode.IsNullOrWhiteSpace())
76+
{
77+
return false;
78+
}
79+
80+
try
81+
{
82+
return CultureInfo.GetCultures(CultureTypes.AllCultures)
83+
.Any(e => e.Name.ToLowerInvariant() == cultureCode.ToLowerInvariant());
84+
}
85+
catch (CultureNotFoundException)
86+
{
87+
return false;
88+
}
89+
}
90+
}
91+
}

src/AbpCompanyName.AbpProjectName.Web/Views/Shared/Components/LanguageSelection/Default.cshtml

+1-1
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
{
1111
if (language.Name != Model.CurrentLanguage.Name)
1212
{
13-
<li><a href="@Url.Action("ChangeCulture", "AbpLocalization")?cultureName=@(language.Name)&returnUrl=@(Model.CurrentUrl)"><div class="@language.Icon"></div> @language.DisplayName</a></li>
13+
<li><a href="@Url.Action("ChangeCulture", "Localization")?cultureName=@(language.Name)&returnUrl=@(Model.CurrentUrl)"><div class="@language.Icon"></div> @language.DisplayName</a></li>
1414
}
1515
}
1616
</ul>

test/AbpCompanyName.AbpProjectName.Tests/AbpCompanyName.AbpProjectName.Tests.csproj

+6-6
Original file line numberDiff line numberDiff line change
@@ -21,18 +21,18 @@
2121

2222
<ItemGroup>
2323
<PackageReference Include="Castle.Core" Version="5.1.1" />
24-
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.9.0" />
25-
<PackageReference Include="xunit" Version="2.7.1" />
26-
<PackageReference Include="xunit.extensibility.execution" Version="2.7.1" />
27-
<PackageReference Include="xunit.runner.visualstudio" Version="2.5.8">
24+
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.10.0" />
25+
<PackageReference Include="xunit" Version="2.9.0" />
26+
<PackageReference Include="xunit.extensibility.execution" Version="2.9.0" />
27+
<PackageReference Include="xunit.runner.visualstudio" Version="2.8.2">
2828
<PrivateAssets>all</PrivateAssets>
2929
<IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
3030
</PackageReference>
3131
<PackageReference Include="Shouldly" Version="4.2.1" />
32-
<PackageReference Include="Abp.TestBase" Version="9.2.2" />
32+
<PackageReference Include="Abp.TestBase" Version="9.3.0" />
3333
<PackageReference Include="NSubstitute" Version="5.1.0" />
3434
<PackageReference Include="Castle.Windsor.MsDependencyInjection" Version="4.1.0" />
35-
<PackageReference Include="Microsoft.EntityFrameworkCore.InMemory" Version="8.0.4" />
35+
<PackageReference Include="Microsoft.EntityFrameworkCore.InMemory" Version="8.0.7" />
3636
<PackageReference Include="Microsoft.DotNet.InternalAbstractions" Version="1.0.0" />
3737
</ItemGroup>
3838
</Project>

test/AbpCompanyName.AbpProjectName.Web.Tests/AbpCompanyName.AbpProjectName.Web.Tests.csproj

+5-5
Original file line numberDiff line numberDiff line change
@@ -22,16 +22,16 @@
2222

2323
<ItemGroup>
2424
<PackageReference Include="Castle.Core" Version="5.1.1" />
25-
<PackageReference Include="Microsoft.AspNetCore.Mvc.Testing" Version="8.0.4" />
26-
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.9.0" />
25+
<PackageReference Include="Microsoft.AspNetCore.Mvc.Testing" Version="8.0.7" />
26+
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.10.0" />
2727
<PackageReference Include="Shouldly" Version="4.2.1" />
28-
<PackageReference Include="xunit" Version="2.7.1" />
29-
<PackageReference Include="xunit.runner.visualstudio" Version="2.5.8">
28+
<PackageReference Include="xunit" Version="2.9.0" />
29+
<PackageReference Include="xunit.runner.visualstudio" Version="2.8.2">
3030
<PrivateAssets>all</PrivateAssets>
3131
<IncludeAssets>runtime; build; native; contentfiles; analyzers</IncludeAssets>
3232
</PackageReference>
3333
<PackageReference Include="Microsoft.AspNetCore.Mvc" Version="2.2.0" />
34-
<PackageReference Include="Abp.AspNetCore.TestBase" Version="9.2.2" />
34+
<PackageReference Include="Abp.AspNetCore.TestBase" Version="9.3.0" />
3535
<PackageReference Include="AngleSharp" Version="1.1.2" />
3636
</ItemGroup>
3737

0 commit comments

Comments
 (0)