小编Bah*_*iei的帖子

如何在 ASP .Net Core 3 中使用 UseRequestLocalization?

我需要一个多语言的网络应用程序。我在 .net core 2.2 中使用我的代码,一切都很好。当我迁移到 .net core 3 时,我遇到了其中一个使用 UseRequestLocalization 的一些问题。

我在 startups.cs 的 Configure 方法中使用此代码,在运行项目后,我看到一个空白页面。

var supportedCultures = new CultureInfo[] {
    new CultureInfo ("en-US"),
    new CultureInfo ("en"),
    GetPersianCulture ("fa-IR"),
    GetPersianCulture ("fa"),
};
app.UseRequestLocalization(new RequestLocalizationOptions
{
    DefaultRequestCulture = new RequestCulture("fa"),
    SupportedCultures = supportedCultures,
    SupportedUICultures = supportedCultures,        
});
Run Code Online (Sandbox Code Playgroud)

localization .net-core .net-core-3.0

7
推荐指数
1
解决办法
2296
查看次数

如何获取 dotnet core 3 的路由属性?

我已将 dotnet core 2.2 升级到 3.preview 7。
因此之后,我无法获取自定义属性。
context.Resource在版本 2.2 中是类型 of AuthorizationFilterContext,但在版本 3 中是类型 of Microsoft.AspNetCore.Http.Endpoint

现在我无法从端点获取属性。

using Microsoft.AspNetCore.Authorization;
using Microsoft.AspNetCore.Mvc.Controllers;
using Microsoft.AspNetCore.Mvc.Filters;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Reflection;
using System.Threading.Tasks;

namespace Gamma.Core.Security
{
    public abstract class AttributeAuthorizationHandler<TRequirement,     TAttribute>
    : AuthorizationHandler<TRequirement> where TRequirement
    : IAuthorizationRequirement where TAttribute : Attribute
    {
        Microsoft.AspNetCore.Http.IHttpContextAccessor _httpContextAccessor = null;
        public AttributeAuthorizationHandler(Microsoft.AspNetCore.Http.IHttpContextAccessor httpContextAccessor)
        {
            _httpContextAccessor = httpContextAccessor;
        }
        protected override Task HandleRequirementAsync(AuthorizationHandlerContext context, TRequirement requirement)
        {
            var attributes = new …
Run Code Online (Sandbox Code Playgroud)

c# authorization routedata .net-core .net-core-3.0

5
推荐指数
2
解决办法
3751
查看次数