// using System; using System.Collections.Generic; using System.Reflection; using DuSoft.PcmDb.Entities; using Microsoft.EntityFrameworkCore.ChangeTracking; using Microsoft.EntityFrameworkCore.Metadata; using Microsoft.EntityFrameworkCore.SqlServer.Storage.Internal; using Microsoft.EntityFrameworkCore.Storage; #pragma warning disable 219, 612, 618 #nullable disable namespace DuSoft.PcmDb.CompiledEntities { internal partial class TekstZgodyEntityType { public static RuntimeEntityType Create(RuntimeModel model, RuntimeEntityType baseEntityType = null) { var runtimeEntityType = model.AddEntityType( "DuSoft.PcmDb.Entities.TekstZgody", typeof(TekstZgody), baseEntityType); var zgId = runtimeEntityType.AddProperty( "ZgId", typeof(decimal), propertyInfo: typeof(TekstZgody).GetProperty("ZgId", BindingFlags.Public | BindingFlags.Instance | BindingFlags.DeclaredOnly), fieldInfo: typeof(TekstZgody).GetField("k__BackingField", BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.DeclaredOnly), afterSaveBehavior: PropertySaveBehavior.Throw, sentinel: 0m); zgId.TypeMapping = SqlServerDecimalTypeMapping.Default.Clone( comparer: new ValueComparer( (decimal v1, decimal v2) => v1 == v2, (decimal v) => v.GetHashCode(), (decimal v) => v), keyComparer: new ValueComparer( (decimal v1, decimal v2) => v1 == v2, (decimal v) => v.GetHashCode(), (decimal v) => v), providerValueComparer: new ValueComparer( (decimal v1, decimal v2) => v1 == v2, (decimal v) => v.GetHashCode(), (decimal v) => v), mappingInfo: new RelationalTypeMappingInfo( storeTypeName: "numeric(9,0)", precision: 9, scale: 0)); zgId.AddAnnotation("Relational:ColumnType", "numeric(9, 0)"); zgId.AddAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.None); var wersja = runtimeEntityType.AddProperty( "Wersja", typeof(string), propertyInfo: typeof(TekstZgody).GetProperty("Wersja", BindingFlags.Public | BindingFlags.Instance | BindingFlags.DeclaredOnly), fieldInfo: typeof(TekstZgody).GetField("k__BackingField", BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.DeclaredOnly), afterSaveBehavior: PropertySaveBehavior.Throw, maxLength: 20, unicode: false); wersja.TypeMapping = SqlServerStringTypeMapping.Default.Clone( comparer: new ValueComparer( (string l, string r) => string.Equals(l, r, StringComparison.OrdinalIgnoreCase), (string v) => v == null ? 0 : StringComparer.OrdinalIgnoreCase.GetHashCode(v), (string v) => v), keyComparer: new ValueComparer( (string l, string r) => string.Equals(l, r, StringComparison.OrdinalIgnoreCase), (string v) => v == null ? 0 : StringComparer.OrdinalIgnoreCase.GetHashCode(v), (string v) => v), providerValueComparer: new ValueComparer( (string l, string r) => string.Equals(l, r, StringComparison.OrdinalIgnoreCase), (string v) => v == null ? 0 : StringComparer.OrdinalIgnoreCase.GetHashCode(v), (string v) => v), mappingInfo: new RelationalTypeMappingInfo( storeTypeName: "varchar(20)", size: 20)); wersja.AddAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.None); var kolejnosc = runtimeEntityType.AddProperty( "Kolejnosc", typeof(int), propertyInfo: typeof(TekstZgody).GetProperty("Kolejnosc", BindingFlags.Public | BindingFlags.Instance | BindingFlags.DeclaredOnly), fieldInfo: typeof(TekstZgody).GetField("k__BackingField", BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.DeclaredOnly), afterSaveBehavior: PropertySaveBehavior.Throw, sentinel: 0); kolejnosc.TypeMapping = IntTypeMapping.Default.Clone( comparer: new ValueComparer( (int v1, int v2) => v1 == v2, (int v) => v, (int v) => v), keyComparer: new ValueComparer( (int v1, int v2) => v1 == v2, (int v) => v, (int v) => v), providerValueComparer: new ValueComparer( (int v1, int v2) => v1 == v2, (int v) => v, (int v) => v)); kolejnosc.AddAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.None); var tekst = runtimeEntityType.AddProperty( "Tekst", typeof(string), propertyInfo: typeof(TekstZgody).GetProperty("Tekst", BindingFlags.Public | BindingFlags.Instance | BindingFlags.DeclaredOnly), fieldInfo: typeof(TekstZgody).GetField("k__BackingField", BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.DeclaredOnly), maxLength: 255, unicode: false); tekst.TypeMapping = SqlServerStringTypeMapping.Default.Clone( comparer: new ValueComparer( (string v1, string v2) => v1 == v2, (string v) => v.GetHashCode(), (string v) => v), keyComparer: new ValueComparer( (string v1, string v2) => v1 == v2, (string v) => v.GetHashCode(), (string v) => v), providerValueComparer: new ValueComparer( (string v1, string v2) => v1 == v2, (string v) => v.GetHashCode(), (string v) => v), mappingInfo: new RelationalTypeMappingInfo( storeTypeName: "varchar(255)", size: 255)); tekst.AddAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.None); var zmiana = runtimeEntityType.AddProperty( "Zmiana", typeof(DateTime), propertyInfo: typeof(TekstZgody).GetProperty("Zmiana", BindingFlags.Public | BindingFlags.Instance | BindingFlags.DeclaredOnly), fieldInfo: typeof(TekstZgody).GetField("k__BackingField", BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.DeclaredOnly), sentinel: new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified)); zmiana.TypeMapping = SqlServerDateTimeTypeMapping.Default.Clone( comparer: new ValueComparer( (DateTime v1, DateTime v2) => v1.Equals(v2), (DateTime v) => v.GetHashCode(), (DateTime v) => v), keyComparer: new ValueComparer( (DateTime v1, DateTime v2) => v1.Equals(v2), (DateTime v) => v.GetHashCode(), (DateTime v) => v), providerValueComparer: new ValueComparer( (DateTime v1, DateTime v2) => v1.Equals(v2), (DateTime v) => v.GetHashCode(), (DateTime v) => v), mappingInfo: new RelationalTypeMappingInfo( storeTypeName: "datetime", dbType: System.Data.DbType.DateTime)); zmiana.AddAnnotation("Relational:ColumnType", "datetime"); zmiana.AddAnnotation("SqlServer:ValueGenerationStrategy", SqlServerValueGenerationStrategy.None); var key = runtimeEntityType.AddKey( new[] { zgId, wersja, kolejnosc }); runtimeEntityType.SetPrimaryKey(key); key.AddAnnotation("Relational:Name", "PK_TEKSTZGODY"); var idx_TXTZG_ZMIANA = runtimeEntityType.AddIndex( new[] { zmiana }, name: "idx_TXTZG_ZMIANA"); return runtimeEntityType; } public static RuntimeForeignKey CreateForeignKey1(RuntimeEntityType declaringEntityType, RuntimeEntityType principalEntityType) { var runtimeForeignKey = declaringEntityType.AddForeignKey(new[] { declaringEntityType.FindProperty("ZgId") }, principalEntityType.FindKey(new[] { principalEntityType.FindProperty("ZgId") }), principalEntityType, required: true); var zg = declaringEntityType.AddNavigation("Zg", runtimeForeignKey, onDependent: true, typeof(Zgoda), propertyInfo: typeof(TekstZgody).GetProperty("Zg", BindingFlags.Public | BindingFlags.Instance | BindingFlags.DeclaredOnly), fieldInfo: typeof(TekstZgody).GetField("k__BackingField", BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.DeclaredOnly)); var tekstZgody = principalEntityType.AddNavigation("TekstZgody", runtimeForeignKey, onDependent: false, typeof(ICollection), propertyInfo: typeof(Zgoda).GetProperty("TekstZgody", BindingFlags.Public | BindingFlags.Instance | BindingFlags.DeclaredOnly), fieldInfo: typeof(Zgoda).GetField("k__BackingField", BindingFlags.NonPublic | BindingFlags.Instance | BindingFlags.DeclaredOnly)); runtimeForeignKey.AddAnnotation("Relational:Name", "FK_TXTZG_ZGODA"); return runtimeForeignKey; } public static void CreateAnnotations(RuntimeEntityType runtimeEntityType) { runtimeEntityType.AddAnnotation("Relational:FunctionName", null); runtimeEntityType.AddAnnotation("Relational:Schema", null); runtimeEntityType.AddAnnotation("Relational:SqlQuery", null); runtimeEntityType.AddAnnotation("Relational:TableName", "TekstZgody"); runtimeEntityType.AddAnnotation("Relational:ViewName", null); runtimeEntityType.AddAnnotation("Relational:ViewSchema", null); Customize(runtimeEntityType); } static partial void Customize(RuntimeEntityType runtimeEntityType); } }