Что я делаю?
Я делаю приложение API через ASP. NET Core. Я следовал этому уроку: https://docs.microsoft.com/en-us/aspnet/core/tutorials/first-web-api?view=aspnetcore-3.1&tabs=visual-studio.
В чем проблема?
В уроке описано, как создать собственную модель, ее контекст и контроллер. Однако я могу получить доступ только к контексту с этого контроллера. Но что, если я хочу получить доступ к хранимым данным с другого контроллера, который не имеет этого контекста? Или, может быть, не из контроллера вообще, я мог бы хотеть получить доступ к контексту также из других классов. Так как контекстный класс не является stati c, мне нужен способ получить доступ к одному и тому же экземпляру (который передается в контроллер) из любого места.
Я думаю, что на самом деле это довольно базовые вещи c, но я не мог не найти нигде описанного. Вероятно, не могу правильно сформулировать мой вопрос.
Код
В контроллерах контекст передается при создании:
[Route("api/[controller]")]
[ApiController]
public class AuthTokensController : ControllerBase
{
private readonly AuthTokenContext _context;
public AuthTokensController(AuthTokenContext context)
{
_context = context;
}
Класс контекста:
public class AuthTokenContext : DbContext
{
public AuthTokenContext(DbContextOptions<AuthTokenContext> options) : base(options) { }
public DbSet<AuthToken> AuthTokens { get; set; }