1
resposta

Uso da expressão lambda.

Por que tens utilizado uma expressão lambda nesse caso? services.AddDbContext(options => options.UseSqlServer())

1 resposta

Olá, Germano

O método UseSqlServer recebe options como um parâmetro do tipo Action<DbContextOptionsBuilder>:

public static IServiceCollection AddDbContext<TContext>([NotNullAttribute] this IServiceCollection serviceCollection, [CanBeNullAttribute] Action<DbContextOptionsBuilder> optionsAction...

Para passar uma action como argumento numa chamada de método, você pode criar uma instância de action, ou usar a sintaxe simplificada para actions disponível na linguagem C#, que são as lambda expressions.

Note que UseSqlServer() é apenas um dos vários métodos de configuração disponíveis no objeto options. Você pode usar outros métodos (não mostrados no curso) para configurar o banco de dados, como:

  • ConfigureWarnings()
  • EnableSensitiveDataLogging()
  • ReplaceService()
  • UseApplicationServiceProvider()
  • UseInternalServiceProvider()
  • UseLoggerFactory()
  • UseMemoryCache()
  • UseModel()
  • UseQueryTrackingBehavior()