public static ModelBuilderTest.TestEntityTypeBuilder <TEntity> UseTptMappingStrategy <TEntity>(
        this ModelBuilderTest.TestEntityTypeBuilder <TEntity> builder)
        where TEntity : class
    {
        switch (builder)
        {
        case IInfrastructure <EntityTypeBuilder <TEntity> > genericBuilder:
            genericBuilder.Instance.UseTptMappingStrategy();
            break;

        case IInfrastructure <EntityTypeBuilder> nongenericBuilder:
            nongenericBuilder.Instance.UseTptMappingStrategy();
            break;
        }

        return(builder);
    }
    public static ModelBuilderTest.TestEntityTypeBuilder <TEntity> ToTable <TEntity>(
        this ModelBuilderTest.TestEntityTypeBuilder <TEntity> builder,
        string?name)
        where TEntity : class
    {
        switch (builder)
        {
        case IInfrastructure <EntityTypeBuilder <TEntity> > genericBuilder:
            genericBuilder.Instance.ToTable(name);
            break;

        case IInfrastructure <EntityTypeBuilder> nongenericBuilder:
            nongenericBuilder.Instance.ToTable(name);
            break;
        }

        return(builder);
    }
Пример #3
0
    public static ModelBuilderTest.TestEntityTypeBuilder <TEntity> HasPartitionKey <TEntity>(
        this ModelBuilderTest.TestEntityTypeBuilder <TEntity> builder,
        string name)
        where TEntity : class
    {
        switch (builder)
        {
        case IInfrastructure <EntityTypeBuilder <TEntity> > genericBuilder:
            genericBuilder.Instance.HasPartitionKey(name);
            break;

        case IInfrastructure <EntityTypeBuilder> nonGenericBuilder:
            nonGenericBuilder.Instance.HasPartitionKey(name);
            break;
        }

        return(builder);
    }
    public static ModelBuilderTest.TestEntityTypeBuilder <TEntity> HasCheckConstraint <TEntity>(
        this ModelBuilderTest.TestEntityTypeBuilder <TEntity> builder,
        string name,
        string?sql)
        where TEntity : class
    {
        switch (builder)
        {
        case IInfrastructure <EntityTypeBuilder <TEntity> > genericBuilder:
            genericBuilder.Instance.HasCheckConstraint(name, sql);
            break;

        case IInfrastructure <EntityTypeBuilder> nongenericBuilder:
            nongenericBuilder.Instance.HasCheckConstraint(name, sql);
            break;
        }

        return(builder);
    }
    public static ModelBuilderTest.TestEntityTypeBuilder <TEntity> ToTable <TEntity>(
        this ModelBuilderTest.TestEntityTypeBuilder <TEntity> builder,
        Action <RelationalModelBuilderTest.TestTableBuilder <TEntity> > buildAction)
        where TEntity : class
    {
        switch (builder)
        {
        case IInfrastructure <EntityTypeBuilder <TEntity> > genericBuilder:
            genericBuilder.Instance.ToTable(b => buildAction(new RelationalModelBuilderTest.GenericTestTableBuilder <TEntity>(b)));
            break;

        case IInfrastructure <EntityTypeBuilder> nongenericBuilder:
            nongenericBuilder.Instance.ToTable(
                b => buildAction(new RelationalModelBuilderTest.NonGenericTestTableBuilder <TEntity>(b)));
            break;
        }

        return(builder);
    }
Пример #6
0
    public static ModelBuilderTest.TestEntityTypeBuilder <TEntity> HasPartitionKey <TEntity, TProperty>(
        this ModelBuilderTest.TestEntityTypeBuilder <TEntity> builder,
        Expression <Func <TEntity, TProperty> > propertyExpression)
        where TEntity : class
    {
        switch (builder)
        {
        case IInfrastructure <EntityTypeBuilder <TEntity> > genericBuilder:
            genericBuilder.Instance.HasPartitionKey(propertyExpression);
            break;

        case IInfrastructure <EntityTypeBuilder> nonGenericBuilder:
            var memberInfo = propertyExpression.GetMemberAccess();
            nonGenericBuilder.Instance.HasPartitionKey(memberInfo.Name);
            break;
        }

        return(builder);
    }
    public static ModelBuilderTest.TestEntityTypeBuilder <TEntity> HasCheckConstraint <TEntity>(
        this ModelBuilderTest.TestEntityTypeBuilder <TEntity> builder,
        string name,
        string sql,
        Action <RelationalModelBuilderTest.TestCheckConstraintBuilder> buildAction)
        where TEntity : class
    {
        switch (builder)
        {
        case IInfrastructure <EntityTypeBuilder <TEntity> > genericBuilder:
            genericBuilder.Instance.HasCheckConstraint(
                name, sql,
                b => buildAction(new RelationalModelBuilderTest.NonGenericTestCheckConstraintBuilder(b)));
            break;

        case IInfrastructure <EntityTypeBuilder> nongenericBuilder:
            nongenericBuilder.Instance.HasCheckConstraint(
                name, sql,
                b => buildAction(new RelationalModelBuilderTest.NonGenericTestCheckConstraintBuilder(b)));
            break;
        }

        return(builder);
    }