Skip to content

Commit eebd335

Browse files
committed
Added Versioned and VersionedNullable tables
1 parent df3035b commit eebd335

File tree

47 files changed

+361
-45
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

47 files changed

+361
-45
lines changed

TestDatabases/SQLServer/EfrpgTest (manually created).sql

Lines changed: 32 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -20,13 +20,13 @@ ALTER DATABASE [EfrpgTest] SET CONCAT_NULL_YIELDS_NULL OFF
2020
ALTER DATABASE [EfrpgTest] SET NUMERIC_ROUNDABORT OFF
2121
ALTER DATABASE [EfrpgTest] SET QUOTED_IDENTIFIER OFF
2222
ALTER DATABASE [EfrpgTest] SET RECURSIVE_TRIGGERS OFF
23-
ALTER DATABASE [EfrpgTest] SET DISABLE_BROKER
23+
ALTER DATABASE [EfrpgTest] SET DISABLE_BROKER
2424
ALTER DATABASE [EfrpgTest] SET AUTO_UPDATE_STATISTICS_ASYNC OFF
2525
ALTER DATABASE [EfrpgTest] SET DATE_CORRELATION_OPTIMIZATION OFF
2626
ALTER DATABASE [EfrpgTest] SET PARAMETERIZATION SIMPLE
27-
ALTER DATABASE [EfrpgTest] SET READ_WRITE
27+
ALTER DATABASE [EfrpgTest] SET READ_WRITE
2828
ALTER DATABASE [EfrpgTest] SET RECOVERY SIMPLE
29-
ALTER DATABASE [EfrpgTest] SET MULTI_USER
29+
ALTER DATABASE [EfrpgTest] SET MULTI_USER
3030
ALTER DATABASE [EfrpgTest] SET PAGE_VERIFY CHECKSUM
3131
GO
3232
USE [EfrpgTest]
@@ -57,13 +57,13 @@ ALTER DATABASE [EfrpgTest_Synonyms] SET CONCAT_NULL_YIELDS_NULL OFF
5757
ALTER DATABASE [EfrpgTest_Synonyms] SET NUMERIC_ROUNDABORT OFF
5858
ALTER DATABASE [EfrpgTest_Synonyms] SET QUOTED_IDENTIFIER OFF
5959
ALTER DATABASE [EfrpgTest_Synonyms] SET RECURSIVE_TRIGGERS OFF
60-
ALTER DATABASE [EfrpgTest_Synonyms] SET DISABLE_BROKER
60+
ALTER DATABASE [EfrpgTest_Synonyms] SET DISABLE_BROKER
6161
ALTER DATABASE [EfrpgTest_Synonyms] SET AUTO_UPDATE_STATISTICS_ASYNC OFF
6262
ALTER DATABASE [EfrpgTest_Synonyms] SET DATE_CORRELATION_OPTIMIZATION OFF
6363
ALTER DATABASE [EfrpgTest_Synonyms] SET PARAMETERIZATION SIMPLE
64-
ALTER DATABASE [EfrpgTest_Synonyms] SET READ_WRITE
64+
ALTER DATABASE [EfrpgTest_Synonyms] SET READ_WRITE
6565
ALTER DATABASE [EfrpgTest_Synonyms] SET RECOVERY SIMPLE
66-
ALTER DATABASE [EfrpgTest_Synonyms] SET MULTI_USER
66+
ALTER DATABASE [EfrpgTest_Synonyms] SET MULTI_USER
6767
ALTER DATABASE [EfrpgTest_Synonyms] SET PAGE_VERIFY CHECKSUM
6868
GO
6969
USE [EfrpgTest_Synonyms]
@@ -94,13 +94,13 @@ ALTER DATABASE [EfrpgTest_Settings] SET CONCAT_NULL_YIELDS_NULL OFF
9494
ALTER DATABASE [EfrpgTest_Settings] SET NUMERIC_ROUNDABORT OFF
9595
ALTER DATABASE [EfrpgTest_Settings] SET QUOTED_IDENTIFIER OFF
9696
ALTER DATABASE [EfrpgTest_Settings] SET RECURSIVE_TRIGGERS OFF
97-
ALTER DATABASE [EfrpgTest_Settings] SET DISABLE_BROKER
97+
ALTER DATABASE [EfrpgTest_Settings] SET DISABLE_BROKER
9898
ALTER DATABASE [EfrpgTest_Settings] SET AUTO_UPDATE_STATISTICS_ASYNC OFF
9999
ALTER DATABASE [EfrpgTest_Settings] SET DATE_CORRELATION_OPTIMIZATION OFF
100100
ALTER DATABASE [EfrpgTest_Settings] SET PARAMETERIZATION SIMPLE
101-
ALTER DATABASE [EfrpgTest_Settings] SET READ_WRITE
101+
ALTER DATABASE [EfrpgTest_Settings] SET READ_WRITE
102102
ALTER DATABASE [EfrpgTest_Settings] SET RECOVERY SIMPLE
103-
ALTER DATABASE [EfrpgTest_Settings] SET MULTI_USER
103+
ALTER DATABASE [EfrpgTest_Settings] SET MULTI_USER
104104
ALTER DATABASE [EfrpgTest_Settings] SET PAGE_VERIFY CHECKSUM
105105
GO
106106
USE [EfrpgTest_Settings]
@@ -1904,6 +1904,29 @@ EXEC sys.sp_addextendedproperty
19041904
@level1type = N'TABLE', @level1name = 'CodeObject';
19051905
GO
19061906

1907+
CREATE TABLE Versioned
1908+
(
1909+
Id INT NOT NULL IDENTITY(1, 1),
1910+
[Version] ROWVERSION NOT NULL,
1911+
Number INT NOT NULL,
1912+
CONSTRAINT PK_Versioned PRIMARY KEY (Id)
1913+
);
1914+
GO
1915+
INSERT INTO Versioned (Number) VALUES (123);
1916+
INSERT INTO Versioned (Number) VALUES (456);
1917+
GO
1918+
1919+
CREATE TABLE VersionedNullable
1920+
(
1921+
Id INT NOT NULL IDENTITY(1, 1),
1922+
[Version] ROWVERSION NULL,
1923+
Number INT NOT NULL,
1924+
CONSTRAINT PK_VersionedNullable PRIMARY KEY (Id)
1925+
);
1926+
GO
1927+
INSERT INTO VersionedNullable (Number) VALUES (123);
1928+
INSERT INTO VersionedNullable (Number) VALUES (456);
1929+
GO
19071930

19081931
-- Table with sequences
19091932
CREATE SEQUENCE dbo.CountBy1 AS INT START WITH 1 INCREMENT BY 1;
0 Bytes
Binary file not shown.

Tester.Integration.EFCore6/EfrpgTestData/Configuration/EnumTest_DaysOfWeekConfiguration.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,9 @@ public class EnumTest_DaysOfWeekConfiguration : IEntityTypeConfiguration<EnumTes
1212
public void Configure(EntityTypeBuilder<EnumTest_DaysOfWeek> builder)
1313
{
1414
builder.ToTable("DaysOfWeek", "EnumTest");
15-
builder.HasKey(x => new { x.TypeName, x.TypeId });
15+
builder.HasKey(x => x.TypeId).HasName("PK_EnumTest_DaysOfWeek").IsClustered();
1616

17-
builder.Property(x => x.TypeName).HasColumnName(@"TypeName").HasColumnType("varchar(50)").IsRequired().IsUnicode(false).HasMaxLength(50).ValueGeneratedNever();
17+
builder.Property(x => x.TypeName).HasColumnName(@"TypeName").HasColumnType("varchar(50)").IsRequired().IsUnicode(false).HasMaxLength(50);
1818
builder.Property(x => x.TypeId).HasColumnName(@"TypeId").HasColumnType("int").IsRequired().ValueGeneratedNever();
1919
}
2020
}

Tester.Integration.EFCore6/EfrpgTestData/Configuration/VersionedConfiguration.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ public void Configure(EntityTypeBuilder<Versioned> builder)
1515
builder.HasKey(x => x.Id).HasName("PK_Versioned").IsClustered();
1616

1717
builder.Property(x => x.Id).HasColumnName(@"Id").HasColumnType("int").IsRequired().ValueGeneratedOnAdd().UseIdentityColumn();
18-
builder.Property(x => x.Version).HasColumnName(@"Version").HasColumnType("timestamp").IsRequired().IsRowVersion().ValueGeneratedOnAddOrUpdate();
18+
builder.Property(x => x.Version).HasColumnName(@"Version").HasColumnType("timestamp(8)").IsRequired().IsFixedLength().HasMaxLength(8).IsRowVersion();
1919
builder.Property(x => x.Number).HasColumnName(@"Number").HasColumnType("int").IsRequired();
2020
}
2121
}

Tester.Integration.EFCore6/EfrpgTestData/Configuration/VersionedNullableConfiguration.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ public void Configure(EntityTypeBuilder<VersionedNullable> builder)
1515
builder.HasKey(x => x.Id).HasName("PK_VersionedNullable").IsClustered();
1616

1717
builder.Property(x => x.Id).HasColumnName(@"Id").HasColumnType("int").IsRequired().ValueGeneratedOnAdd().UseIdentityColumn();
18-
builder.Property(x => x.Version).HasColumnName(@"Version").HasColumnType("timestamp").IsRequired(false).IsRowVersion().ValueGeneratedOnAddOrUpdate();
18+
builder.Property(x => x.Version).HasColumnName(@"Version").HasColumnType("timestamp").IsRequired(false);
1919
builder.Property(x => x.Number).HasColumnName(@"Number").HasColumnType("int").IsRequired();
2020
}
2121
}

Tester.Integration.EFCore6/EfrpgTestData/Entities/EnumTest_DaysOfWeek.cs

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,8 +10,20 @@ namespace V6EfrpgTest
1010
// DaysOfWeek
1111
public class EnumTest_DaysOfWeek
1212
{
13-
public string TypeName { get; set; } // TypeName (Primary key) (length: 50)
13+
public string TypeName { get; set; } // TypeName (length: 50)
1414
public int TypeId { get; set; } // TypeId (Primary key)
15+
16+
// Reverse navigation
17+
18+
/// <summary>
19+
/// Child EnumTest_OpenDays where [OpenDays].[EnumId] point to this entity (Fk_OpenDays_EnumId)
20+
/// </summary>
21+
public virtual ICollection<EnumTest_OpenDay> EnumTest_OpenDays { get; set; } // OpenDays.Fk_OpenDays_EnumId
22+
23+
public EnumTest_DaysOfWeek()
24+
{
25+
EnumTest_OpenDays = new List<EnumTest_OpenDay>();
26+
}
1527
}
1628

1729
}

Tester.Integration.EFCore6/EfrpgTestData/Entities/Versioned.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ namespace V6EfrpgTest
1111
public class Versioned
1212
{
1313
public int Id { get; set; } // Id (Primary key)
14-
public byte[] Version { get; private set; } // Version (length: 8)
14+
public byte[] Version { get; set; } // Version (length: 8)
1515
public int Number { get; set; } // Number
1616
}
1717

Tester.Integration.EFCore6/EfrpgTestData/Entities/VersionedNullable.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ namespace V6EfrpgTest
1111
public class VersionedNullable
1212
{
1313
public int Id { get; set; } // Id (Primary key)
14-
public byte[] Version { get; private set; } // Version (length: 8)
14+
public byte[] Version { get; set; } // Version
1515
public int Number { get; set; } // Number
1616
}
1717

Tester.Integration.EFCore6/EfrpgTestData/FakeV6EfrpgTestDbContext.cs

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,7 @@ public class FakeV6EfrpgTestDbContext : IV6EfrpgTestDbContext
5757
public DbSet<DsOpe> DsOpes { get; set; } // DSOpe
5858
public DbSet<EnumsWithStringAsValue> EnumsWithStringAsValues { get; set; } // EnumsWithStringAsValue
5959
public DbSet<EnumTest_DaysOfWeek> EnumTest_DaysOfWeeks { get; set; } // DaysOfWeek
60+
public DbSet<EnumTest_OpenDay> EnumTest_OpenDays { get; set; } // OpenDays
6061
public DbSet<EnumWithDefaultValue> EnumWithDefaultValues { get; set; } // EnumWithDefaultValue
6162
public DbSet<EventProcessor> EventProcessors { get; set; } // EventProcessor
6263
public DbSet<EventProcessorEventFilter> EventProcessorEventFilters { get; set; } // EventProcessorEventFilter
@@ -106,6 +107,8 @@ public class FakeV6EfrpgTestDbContext : IV6EfrpgTestDbContext
106107
public DbSet<User> Users { get; set; } // User
107108
public DbSet<User309> User309 { get; set; } // User309
108109
public DbSet<UserDocument> UserDocuments { get; set; } // User_Document
110+
public DbSet<Versioned> Versioneds { get; set; } // Versioned
111+
public DbSet<VersionedNullable> VersionedNullables { get; set; } // VersionedNullable
109112
public DbSet<ViewWithSpace> ViewWithSpaces { get; set; } // view with space
110113
public DbSet<WVN_Article> WVN_Articles { get; set; } // Articles
111114
public DbSet<WVN_VArticle> WVN_VArticles { get; set; } // v_Articles
@@ -156,7 +159,8 @@ public FakeV6EfrpgTestDbContext()
156159
DefaultCheckForNulls = new FakeDbSet<DefaultCheckForNull>("Id");
157160
DsOpes = new FakeDbSet<DsOpe>("Id");
158161
EnumsWithStringAsValues = new FakeDbSet<EnumsWithStringAsValue>("EnumName", "Value");
159-
EnumTest_DaysOfWeeks = new FakeDbSet<EnumTest_DaysOfWeek>("TypeName", "TypeId");
162+
EnumTest_DaysOfWeeks = new FakeDbSet<EnumTest_DaysOfWeek>("TypeId");
163+
EnumTest_OpenDays = new FakeDbSet<EnumTest_OpenDay>("Id");
160164
EnumWithDefaultValues = new FakeDbSet<EnumWithDefaultValue>("Id");
161165
EventProcessors = new FakeDbSet<EventProcessor>("Id");
162166
EventProcessorEventFilters = new FakeDbSet<EventProcessorEventFilter>("Id");
@@ -206,6 +210,8 @@ public FakeV6EfrpgTestDbContext()
206210
Users = new FakeDbSet<User>("Id");
207211
User309 = new FakeDbSet<User309>("UserId");
208212
UserDocuments = new FakeDbSet<UserDocument>("Id");
213+
Versioneds = new FakeDbSet<Versioned>("Id");
214+
VersionedNullables = new FakeDbSet<VersionedNullable>("Id");
209215
ViewWithSpaces = new FakeDbSet<ViewWithSpace>();
210216
WVN_Articles = new FakeDbSet<WVN_Article>("PkArticle");
211217
WVN_VArticles = new FakeDbSet<WVN_VArticle>();

Tester.Integration.EFCore6/EfrpgTestData/Interface/IV6EfrpgTestDbContext.cs

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,7 @@ public interface IV6EfrpgTestDbContext : IDisposable
5757
DbSet<DsOpe> DsOpes { get; set; } // DSOpe
5858
DbSet<EnumsWithStringAsValue> EnumsWithStringAsValues { get; set; } // EnumsWithStringAsValue
5959
DbSet<EnumTest_DaysOfWeek> EnumTest_DaysOfWeeks { get; set; } // DaysOfWeek
60+
DbSet<EnumTest_OpenDay> EnumTest_OpenDays { get; set; } // OpenDays
6061
DbSet<EnumWithDefaultValue> EnumWithDefaultValues { get; set; } // EnumWithDefaultValue
6162
DbSet<EventProcessor> EventProcessors { get; set; } // EventProcessor
6263
DbSet<EventProcessorEventFilter> EventProcessorEventFilters { get; set; } // EventProcessorEventFilter
@@ -106,6 +107,8 @@ public interface IV6EfrpgTestDbContext : IDisposable
106107
DbSet<User> Users { get; set; } // User
107108
DbSet<User309> User309 { get; set; } // User309
108109
DbSet<UserDocument> UserDocuments { get; set; } // User_Document
110+
DbSet<Versioned> Versioneds { get; set; } // Versioned
111+
DbSet<VersionedNullable> VersionedNullables { get; set; } // VersionedNullable
109112
DbSet<ViewWithSpace> ViewWithSpaces { get; set; } // view with space
110113
DbSet<WVN_Article> WVN_Articles { get; set; } // Articles
111114
DbSet<WVN_VArticle> WVN_VArticles { get; set; } // v_Articles

0 commit comments

Comments
 (0)