Entities: Use 'required' and '= null!' to get rid of warnings

This commit is contained in:
2024-02-29 15:48:09 +01:00
parent 53a25b3be4
commit f922388db9
40 changed files with 142 additions and 155 deletions

View File

@ -18,19 +18,19 @@ namespace Elwig.Models.Entities {
public string? Prefix { get; set; }
[Column("given_name")]
public string GivenName { get; set; }
public required string GivenName { get; set; }
[Column("middle_names")]
public string? MiddleName { get; set; }
[NotMapped]
public string[] MiddleNames {
get { return (MiddleName != null) ? MiddleName.Split(" ") : Array.Empty<string>(); }
set { MiddleName = (value.Length > 0) ? string.Join(" ", value) : null; }
get => (MiddleName != null) ? MiddleName.Split(" ") : [];
set => MiddleName = (value.Length > 0) ? string.Join(" ", value) : null;
}
[Column("family_name")]
public string FamilyName { get; set; }
public required string FamilyName { get; set; }
[Column("suffix")]
public string? Suffix { get; set; }
@ -118,10 +118,10 @@ namespace Elwig.Models.Entities {
public int CountryNum { get; set; }
[Column("postal_dest")]
public string PostalDestId { get; set; }
public string PostalDestId { get; set; } = null!;
[Column("address")]
public string Address { get; set; }
public string Address { get; set; } = null!;
[Column("default_kgnr")]
public int? DefaultKgNr { get; set; }
@ -139,10 +139,10 @@ namespace Elwig.Models.Entities {
public virtual Member? Predecessor { get; private set; }
[ForeignKey("CountryNum")]
public virtual Country Country { get; private set; }
public virtual Country Country { get; private set; } = null!;
[ForeignKey("CountryNum, PostalDestId")]
public virtual PostalDest PostalDest { get; private set; }
public virtual PostalDest PostalDest { get; private set; } = null!;
[ForeignKey("DefaultKgNr")]
public virtual WbKg? DefaultWbKg { get; private set; }
@ -154,7 +154,7 @@ namespace Elwig.Models.Entities {
public virtual Branch? Branch { get; private set; }
[InverseProperty("Member")]
public virtual ISet<AreaCom> AreaCommitments { get; private set; }
public virtual ISet<AreaCom> AreaCommitments { get; private set; } = null!;
[NotMapped]
public IEnumerable<AreaCom> ActiveAreaCommitments => AreaCommitments
@ -164,22 +164,22 @@ namespace Elwig.Models.Entities {
public virtual BillingAddr? BillingAddress { get; private set; }
[InverseProperty("Member")]
public virtual ISet<Delivery> Deliveries { get; private set; }
public virtual ISet<Delivery> Deliveries { get; private set; } = null!;
[InverseProperty("Member")]
public virtual ISet<MemberTelNr> TelephoneNumbers { get; private set; }
public virtual ISet<MemberTelNr> TelephoneNumbers { get; private set; } = null!;
[InverseProperty("member")]
public virtual ISet<MemberEmailAddr> EmailAddresses { get; private set; }
public virtual ISet<MemberEmailAddr> EmailAddresses { get; private set; } = null!;
public string FullAddress => $"{Address}, {PostalDest.AtPlz.Plz} {PostalDest.AtPlz.Ort.Name}";
public string FullAddress => $"{Address}, {PostalDest.AtPlz?.Plz} {PostalDest.AtPlz?.Ort.Name}";
public int SearchScore(IEnumerable<string> keywords) {
return Utils.GetSearchScore(new string?[] {
return Utils.GetSearchScore([
FamilyName, MiddleName, GivenName,
BillingAddress?.Name,
Comment,
}, keywords);
], keywords);
}
}
}