diff --git a/Signum.Engine/Schema/Schema.Basics.cs b/Signum.Engine/Schema/Schema.Basics.cs index 8cfe99ccfe..3700bd5505 100644 --- a/Signum.Engine/Schema/Schema.Basics.cs +++ b/Signum.Engine/Schema/Schema.Basics.cs @@ -512,7 +512,7 @@ public partial class FieldPrimaryKey : Field, IColumn bool IColumn.PrimaryKey { get { return true; } } public bool Identity { get; set; } bool IColumn.IdentityBehaviour { get { return table.IdentityBehaviour; } } - int? IColumn.Size { get { return null; } } + public int? Size { get; set; } int? IColumn.Scale { get { return null; } } public string? Collation { get; set; } Table? IColumn.ReferenceTable { get { return null; } } @@ -840,7 +840,7 @@ public partial class FieldReference : Field, IColumn, IFieldReference public bool PrimaryKey { get; set; } //For View bool IColumn.Identity { get { return false; } } bool IColumn.IdentityBehaviour { get { return false; } } - int? IColumn.Size { get { return null; } } + int? IColumn.Size { get { return this.ReferenceTable.PrimaryKey.Size; } } int? IColumn.Scale { get { return null; } } public Table ReferenceTable { get; set; } Table? IColumn.ReferenceTable => ReferenceTable; diff --git a/Signum.Engine/Schema/SchemaBuilder/SchemaBuilder.cs b/Signum.Engine/Schema/SchemaBuilder/SchemaBuilder.cs index b437d402d6..b3270bbd47 100644 --- a/Signum.Engine/Schema/SchemaBuilder/SchemaBuilder.cs +++ b/Signum.Engine/Schema/SchemaBuilder/SchemaBuilder.cs @@ -545,6 +545,7 @@ protected virtual Field GenerateFieldPrimaryKey(Table table, PropertyRoute route UserDefinedTypeName = pair.UserDefinedTypeName, Default = attr.GetDefault(Settings.IsPostgres), Identity = attr.Identity, + Size = attr.HasSize ? attr.Size : (int?)null, }; }