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 static void AddQuotes(this IServiceCollection services, DataContextBuilder dataContextBuilder) { services.AddScoped<IQuoteStore, QuoteStore>(); services.AddScoped<QuoteManager, QuoteManager>(); dataContextBuilder.RegisterModel<Quote>(); }
public static void AddPages(this IServiceCollection services, DataContextBuilder dataContextBuilder) { services.AddScoped<IPageStore, PageStore>(); services.AddScoped<IPageManager, PageManager>(); dataContextBuilder.RegisterModel<Page>(); dataContextBuilder.RegisterModel<PlainTextPageContent>(); }
public static void AddBlogs(this IServiceCollection services, DataContextBuilder dataContextBuilder) { services.AddScoped<IBlogStore, BlogStore>(); services.AddScoped<IBlogPostStore, BlogPostStore>(); services.AddScoped<BlogManager, BlogManager>(); dataContextBuilder.RegisterModel<Blog>(); dataContextBuilder.RegisterModel<BlogPost>(); }
public static DataContextBuilder UseSqlite(this DataContextBuilder options, string connectionString) { var driver = new SqliteDriver() { ConnectionString = connectionString }; options.DbDriver = driver; return(options); }
// This method gets called by the runtime. Use this method to add services to the container. public void ConfigureServices(IServiceCollection services) { // Add framework services. var dataContextBuilder = new DataContextBuilder(); //add supplimental content packages here services.AddBlogs(dataContextBuilder); services.AddQuotes(dataContextBuilder); services.AddPages(dataContextBuilder); services.AddInstance(dataContextBuilder); services.AddHermesDataContext(Configuration.GetSection("DataAccess")); services.AddMvc().AddJsonOptions(options => { options.SerializerSettings.ContractResolver = new CamelCasePropertyNamesContractResolver(); options.SerializerSettings.ReferenceLoopHandling = Newtonsoft.Json.ReferenceLoopHandling.Ignore; }); }
public void CreateDataContext_Creates_Context_Using_Factory_With_Name_Matching_DefaultFactoryName() { // Arrange DataContextBuilder contextBuilder = new DataContextBuilder(); var expectedSession = new Mock<DataContext>(); var expectedFactory = new Mock<DataContextFactory>(); expectedFactory.Setup(f => f.CreateDataContext()).Returns(expectedSession.Object); var otherFactory = new Mock<DataContextFactory>(); otherFactory.Setup(f => f.CreateDataContext()).Returns(() => null); contextBuilder.ContextFactories.Add(TestFactory, () => otherFactory.Object); contextBuilder.ContextFactories.Add(ExpectedFactory, () => expectedFactory.Object); contextBuilder.DefaultFactoryName = ExpectedFactory; // Act DataContext actualContext = contextBuilder.CreateDataContext(); // Assert Assert.AreSame(expectedSession.Object, actualContext, "Expected that the session returned would be constructed by the default session factory"); }
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 void CreateDataContext_Guards_Against_Null_ContextFactory() { DataContextBuilder contextBuilder = new DataContextBuilder(); contextBuilder.ContextFactories.Add( new Export<DataContextFactory, ComponentMetadata>( new Dictionary<string, object> { {"Name", TestFactory} }, () => null)); contextBuilder.DefaultFactoryName = TestFactory; ExceptionAssert.Guards(() => contextBuilder.CreateDataContext(), TargetResources.Error_DataContextFactoryWasNull, TestFactory); }
public void CreateDataContext_Guards_Against_No_Factory_Matching_DefaultFactoryName_Being_Registered() { // Arrange DataContextBuilder contextBuilder = new DataContextBuilder(); contextBuilder.DefaultFactoryName = TestFactory; // Act and Assert ExceptionAssert.Guards(() => contextBuilder.CreateDataContext(), TargetResources.Error_DataContextFactoryNotFound, TestFactory, DataContractNames.DataContextFactoryName); }
public void ContextFactories_Requires_Non_Null_Value() { DataContextBuilder contextBuilder = new DataContextBuilder(); AutoTester.SetNull(() => contextBuilder.ContextFactories); }
public void ContextFactories_Property_Is_ReadWrite() { DataContextBuilder contextBuilder = new DataContextBuilder(); AutoTester.TestReadWriteProperty(() => contextBuilder.ContextFactories, new ComponentCollection<DataContextFactory>()); }
public void DefaultFactoryName_Requires_Non_Null_Value() { DataContextBuilder contextBuilder = new DataContextBuilder(); AutoTester.SetNull(() => contextBuilder.DefaultFactoryName); }
public MyDataContext BuildContext() => DataContextBuilder.BuildDataContext();
public void DefaultFactoryName_Property_Is_ReadWrite() { DataContextBuilder contextBuilder = new DataContextBuilder(); AutoTester.TestReadWriteProperty(() => contextBuilder.DefaultFactoryName, "FooBar"); }
public static void AddBlogs(this IServiceCollection services, DataContextBuilder dataContextBuilder) { services.AddScoped<TagStore, TagStore>(); dataContextBuilder.RegisterModel<Tag>(); }
protected override void OnConfigure(DataContextBuilder builder) { //builder.UseNpgsql("Host=192.168.2.204;Username=postgres;Password=postgres;Database=MinorLinq_t01"); builder.UseSqlite("Data Source=sample.db"); }