Ошибка при использовании сервиса ASP.NET Core/
Учусь использовать ASP.NET Core, дошел до темы внедрения зависимостей. Вот какая ошибка вылезла при компиляции:
Весь код:
WebApplicationBuilder builder = WebApplication.CreateBuilder();
builder.Services.AddTransient<IGreetings, EnGreetings>();
builder.Services.AddTransient<MyService>();
WebApplication app = builder.Build();
app.Map("/hello", app =>
{
app.Run(async (context) =>
{
var met = context.RequestServices.GetService<MyService>();
await context.Response.WriteAsync($"<h1>{met?.Meetings()}</h1>");
});
});
app.Run(async (context) =>
{
await context.Response.WriteAsync("Lalalalalalalal");
});
app.Run();
public interface IGreetings
{
public string PrintHello();
}
public class RuGreetings: IGreetings
{
public string PrintHello()
{
return "Привет мир!";
}
}
public class EnGreetings: IGreetings
{
public string PrintHello()
{
return "Hello World";
}
}
public class MyService
{
private IGreetings _greetings;
private string _name;
public MyService(IGreetings greetings, string name)
{
_greetings = greetings;
_name = name;
}
public string Meetings()
{
return $"Hey, {_name}\n{_greetings.PrintHello()}";
}
}
Источник: Stack Overflow на русском