Бьюсь с сей проблемой уже некоторое время. Суть такова. В ASP я не профи, поэтому спрашиваю у Вас. Не могу вытащить данные пользователя внутри Layout'а страницы. Пробовал по разному. К примеру этот способ не сработал
@using Microsoft.AspNetCore.Identity
@using KSM_Agro.Models
@inject SignInManager<User> SignInManager
@inject UserManager<User> UserManager
@{
var user = await UserManager.GetUserAsync(User);
}
Вечно выбивает ошибку на то, что у меня не зарегистрирован IServiceProvider. Сразу попрошу. Не надо советовать передавать данные пользователя через ViewBag или подобные инструменты. Мне нужно взять именно из Layout. Почитал, что надо добавить в конфигурации через services.AddSingleton или AddTransient. Но и то и то вызывает одну и ту же ошибку No service for type 'Microsoft.AspNetCore.Identity.UserManager`[WebApp.Models.User]' has been registered. Я понимаю что он пишет, но при этом и регистрацию проводил. Что делать не знаю господа.
У вас не хватает регистрации Identity, или при регистрации указан неправильный тип пользователя. Проверьте Startup.ConfigureServices
, там должна быть строка вида:
services.AddIdentity<User, IdentityRole>()...
В ней первый тип-параметр должен совпадать с тем, который вы используете в @inject UserManager<User>
- это должен быть один и тот же тип User
.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Как в такой ситуации можно отписать метод? Отписка, используя (-=) после Invoke не работает, метод все равно вызывается
Нужно объединить статистику из двух таблиц с группировкой по дням (day)p1, p2 - разделы сайта, здесь только для наглядности