diff options
Diffstat (limited to 'docker')
| -rw-r--r-- | docker/crupest-api/CrupestApi/CrupestApi.Commons/Crud/ColumnInfo.cs | 2 | ||||
| -rw-r--r-- | docker/crupest-api/CrupestApi/CrupestApi.Commons/Crud/ColumnMetadata.cs | 9 | 
2 files changed, 10 insertions, 1 deletions
| diff --git a/docker/crupest-api/CrupestApi/CrupestApi.Commons/Crud/ColumnInfo.cs b/docker/crupest-api/CrupestApi/CrupestApi.Commons/Crud/ColumnInfo.cs index ae5081d..0ac6e7b 100644 --- a/docker/crupest-api/CrupestApi/CrupestApi.Commons/Crud/ColumnInfo.cs +++ b/docker/crupest-api/CrupestApi/CrupestApi.Commons/Crud/ColumnInfo.cs @@ -118,7 +118,7 @@ public class ColumnInfo      public bool IsNotNull => IsPrimaryKey || Metadata.GetValueOrDefault(ColumnMetadataKeys.NotNull) is true;      public bool IsGenerated => Metadata.GetValueOrDefault(ColumnMetadataKeys.Generated) is true;      public bool IsNoUpdate => Metadata.GetValueOrDefault(ColumnMetadataKeys.NoUpdate) is true; -    public bool CanBeGenerated => DefaultValueGeneratorMethod is not null; +    public bool CanBeGenerated => (bool?)Metadata.GetValueOrDefault(ColumnMetadataKeys.CanBeGenerated) ?? (DefaultValueGeneratorMethod is not null);      /// <summary>      /// This only returns metadata value. It doesn't not fall back to primary column. If you want to get the real key column, go to table info.      /// </summary> diff --git a/docker/crupest-api/CrupestApi/CrupestApi.Commons/Crud/ColumnMetadata.cs b/docker/crupest-api/CrupestApi/CrupestApi.Commons/Crud/ColumnMetadata.cs index 1082ea4..5d20772 100644 --- a/docker/crupest-api/CrupestApi/CrupestApi.Commons/Crud/ColumnMetadata.cs +++ b/docker/crupest-api/CrupestApi/CrupestApi.Commons/Crud/ColumnMetadata.cs @@ -41,6 +41,13 @@ public static class ColumnMetadataKeys      /// This column acts as key when get one entity for http get method in path.       /// </summary>      public const string ActAsKey = nameof(ColumnAttribute.ActAsKey); + +    /// <summary> +    /// Default value is null, aka, whether a default value generator is specified. +    /// Set to true or false to override it. +    /// </summary> +    /// <returns></returns> +    public const string CanBeGenerated = nameof(ColumnAttribute.CanBeGenerated);  }  public interface IColumnMetadata @@ -123,6 +130,8 @@ public class ColumnAttribute : Attribute, IColumnMetadata      /// <seealso cref="ColumnMetadataKeys.ActAsKey"/>      public bool ActAsKey { get; init; } +    public bool? CanBeGenerated { get; init; } = null; +      public bool TryGetValue(string key, out object? value)      {          var property = GetType().GetProperty(key); | 
