Updated `DigitalData.UserManager.Domain.csproj` to support .NET 4.6.2, 7.0, 8.0, and 9.0. Adjusted implicit usings and nullable reference types settings based on the target framework, disabling nullable types for `net462` and enabling them for others. Refactored entity classes (`BaseEntity`, `ClientUser`, `Group`, `GroupOfUser`, `Module`, `ModuleOfUser`, `User`, and `UserRep`) to conditionally include nullable reference types. Added `?` operator for string properties in .NET 7.0 and above, enhancing code safety and reducing null reference exceptions.
43 lines
1.0 KiB
C#
43 lines
1.0 KiB
C#
using System.ComponentModel;
|
|
using System.ComponentModel.DataAnnotations;
|
|
using System.ComponentModel.DataAnnotations.Schema;
|
|
#if NETFRAMEWORK
|
|
using System;
|
|
#endif
|
|
|
|
namespace DigitalData.UserManager.Domain.Entities
|
|
{
|
|
public class BaseEntity
|
|
{
|
|
[Column("GUID")]
|
|
[Key]
|
|
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
|
|
public int Id { get; set; }
|
|
|
|
[StringLength(50)]
|
|
[Column("ADDED_WHO")]
|
|
public string
|
|
#if NET7_0_OR_GREATER
|
|
?
|
|
#endif
|
|
AddedWho
|
|
{ get; set; }
|
|
|
|
[StringLength(50)]
|
|
[Column("CHANGED_WHO")]
|
|
public string
|
|
#if NET7_0_OR_GREATER
|
|
?
|
|
#endif
|
|
ChangedWho
|
|
{ get; set; }
|
|
|
|
//TODO: assign it to default value in create dto, not here!
|
|
[Column("ADDED_WHEN", TypeName = "datetime")]
|
|
[DefaultValue("GETDATE()")]
|
|
public DateTime AddedWhen { get; set; } = DateTime.Now;
|
|
|
|
[Column("CHANGED_WHEN", TypeName = "datetime")]
|
|
public DateTime? ChangedWhen { get; set; }
|
|
}
|
|
} |