services.AddScoped<IUserClaimsPrincipalFactory<ApplicationUser>,
AdditionalUserClaimsPrincipalFactory>();
public class AdditionalUserClaimsPrincipalFactory
: UserClaimsPrincipalFactory<ApplicationUser, IdentityRole>
{
public AdditionalUserClaimsPrincipalFactory(
UserManager<ApplicationUser> userManager,
RoleManager<IdentityRole> roleManager,
IOptions<IdentityOptions> optionsAccessor)
: base(userManager, roleManager, optionsAccessor)
{ }
public override async Task<ClaimsPrincipal> CreateAsync(ApplicationUser user)
{
var principal = await base.CreateAsync(user);
var identity = (ClaimsIdentity)principal.Identity;
var claims = new List<Claim>();
claims.Add(user.IsAdmin ? new Claim(JwtClaimTypes.Role, "admin") : new Claim(JwtClaimTypes.Role, "user"));
identity.AddClaims(claims);
return principal;
}
}
public class ApplicationUser : IdentityUser
{
[PersonalData]
public string Name { get; set; }
[PersonalData]
public DateTime BirthDate { get; set; }
public bool IsAdmin { get; set; }
}
Я написал две программы для поиска в файлах с большим объемом данных. Одна на QT + C++ а другая на C#. Но qt загружает файлы за 5 минут а, С# 30 за минут. В чем может быть причина?
Да и вообще что лучше для работы с файлами большого объема QT или C#? Перечислите пожалуйста достоинства и недостатки обоих.
scp -i "abs.pem" interactivemap\dist\js\app.js ubuntu@test.com:/var/www/www-root/data/www/test.com/test/js/app.js
scp -i "abs.pem" interactivemap\dist\js\chunk-vendors.js ubuntu@test.com:/var/www/www-root/data/www/test.com/test/js/chunk-vendors.js
scp -i "abs.pem" interactivemap\dist\js\map.js ubuntu@test.com:/var/www/www-root/data/www/test.com/test/js/map.js
scp -i "abs.pem" interactivemap\dist\js\paths.js ubuntu@test.com:/var/www/www-root/data/www/test.com/test/js/paths.js
scp -i "abs.pem" interactivemap\dist\js\settings.js ubuntu@test.com:/var/www/www-root/data/www/test.com/test/js/settings.js
scp -i "abs.pem" interactivemap\dist\js\raphael.min.js ubuntu@test.com:/var/www/www-root/data/www/test.com/test/js/raphael.min.js