public void ConfigureServices(IServiceCollection services) { GraphTypeTypeRegistry.Register <Employee, EmployeeGraph>(); GraphTypeTypeRegistry.Register <EmployeeSummary, EmployeeSummaryGraph>(); GraphTypeTypeRegistry.Register <Company, CompanyGraph>(); services.AddScoped(provider => DataContextBuilder.BuildDataContext()); EfGraphQLConventions.RegisterInContainer(services, DataContextBuilder.Model); foreach (var type in GetGraphQlTypes()) { services.AddSingleton(type); } services.AddGraphQL(options => options.ExposeExceptions = true).AddWebSockets(); services.AddSingleton <ContextFactory>(); services.AddSingleton <IDocumentExecuter, EfDocumentExecuter>(); services.AddSingleton <IDependencyResolver>( provider => new FuncDependencyResolver(provider.GetRequiredService)); services.AddSingleton <ISchema, Schema>(); var mvc = services.AddMvc(); mvc.SetCompatibilityVersion(CompatibilityVersion.Latest); }
public void ConfigureServices(IServiceCollection services) { services.AddScoped(provider => DataContextBuilder.BuildDataContext()); using (var myDataContext = DataContextBuilder.BuildDataContext()) { EfGraphQLConventions.RegisterInContainer(services, myDataContext); } foreach (var type in GetGraphQlTypes()) { services.AddSingleton(type); } services.AddSingleton <IDocumentExecuter, DocumentExecuter>(); services.AddSingleton <IDependencyResolver>( provider => new FuncDependencyResolver(provider.GetRequiredService)); services.AddSingleton <ISchema, Schema>(); var mvc = services.AddMvc(); mvc.SetCompatibilityVersion(CompatibilityVersion.Latest); }
public MyDataContext BuildContext() => DataContextBuilder.BuildDataContext();