gpt4 book ai didi

c# - ASP.NET Core - 无法在属性 '1' 上设置类型 'System.Int32' 的默认值 'MerchantStatus'

转载 作者:行者123 更新时间:2023-12-03 08:13:24 24 4
gpt4 key购买 nike

在 ASP.NET Core 中,我有这个枚举:

    public enum MerchantStatus : byte
{
Inactive = 0,
Active = 1
}

型号:

public class Merchant : AuditableBaseEntity 
{
[Required(ErrorMessage = "Merchant Name is required")]
[Column(TypeName = "Varchar")]
[StringLength(100)]
public string MerchantName { get; set; }

[Required(ErrorMessage = "Account Number is required")]
[Column(TypeName = "Varchar")]
[StringLength(50)]
public string AccountNumber { get; set; }


public MerchantStatus? MerchantStatus { get; set; } // 0=Inactive, 1=Active Active/Inactive --default value

[Display(Name = "Charge Mode")]
public ChargeMode? ChargeMode { get; set; } //0=Fixed Or 1=Percentage
}


modelBuilder.Entity<Merchant>(entity =>
{
entity.Property(m => m.Id).ValueGeneratedOnAdd();
entity.Property(m => m.MerchantStatus).HasDefaultValue(1);

});

我收到此错误:

Cannot set default value '1' of type 'System.Int32' on property 'MerchantStatus' of type 'System.Nullable`1[Helpers.EnumList+MerchantStatus]' in entity type 'Merchant'.

如何解决这个问题?

谢谢

最佳答案

通过替换来转换你的整数

.HasDefaultValue(1);.HasDefaultValue((MerchantStatus)1);

或更好 - 使用定义的枚举.HasDefaultValue(MerchantStatus.Active)

关于c# - ASP.NET Core - 无法在属性 '1' 上设置类型 'System.Int32' 的默认值 'MerchantStatus',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/70157521/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com