Я хочу проверить, чем отличаются AddScoped, AddTransient и AddSingleton. Для этого создал сервис и два субсервиса, чтобы сравнить их хешкоды. Но что-то не пойму, как мне теперь вызвать эти сервисы, используя Dependency Injection?
Для отправки mutation-запросов использую GraphQL и Altair.
MainService.cs
public class MainService
{
public MainService(SubService1 s1, SubService2 s2)
{}
}
public class SubService1
{}
public class SubService2
{}
AppMutation.cs
public class AppMutation : ObjectGraphType
{
public AppMutation(ApplicationContext data, MainService mainservice)
{
Field<AuthorType>(
"deleteAuthor",
arguments: new QueryArguments(
new QueryArgument<NonNullGraphType<IntGraphType>> { Name = "id" }
),
resolve: context =>
{
var id = context.GetArgument<int>("id");
if (data.Authors.Any(b => b.Id == id))
{
var author = data.Authors.FirstOrDefault(b => b.Id == id);
// Как мне вызвать сервисы, используя Dependency Injection?
string mainServiceString = mainservice.GetHashCode().ToString();
data.Authors.Remove(author);
data.SaveChanges();
return author;
}
return null;
});
}
}
Startup.cs
public class Startup
{
public void ConfigureServices(IServiceCollection services)
{
services.AddScoped<AppMutation>();
services.AddScoped<MainService>();
services.AddScoped<SubService1>();
services.AddTransient<SubService2>();
}
}
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Задача: реализовать мини программу по бекапу определенной директории определенного диска
Мне известно назначение каждой конфигурации и то, что в Release проводится оптимизация, а в Debug машинный код полностью соответствует написанному...
Не получается передать дату в формате YYYY-MM-DDTHH:MM:SS в DateTime, не в stringПробовала DateTime перевести в
Нужно упорядочить записи по возрастанию номера группа с помощью интерфейса IComparer, а также сделать добавление данных в массив без ввода с клавиатурыЯ...