TekH bc44de63ee Update project for multi-targeting and nullable types
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.
2025-06-26 13:15:36 +02:00

57 lines
1.3 KiB
C#

using System.ComponentModel.DataAnnotations.Schema;
#if NETFRAMEWORK
using System;
#endif
namespace DigitalData.UserManager.Domain.Entities
{
[Table("TBDD_USER_REPRESENTATION", Schema = "dbo")]
public class UserRep : BaseEntity
{
[Column("USER_ID")]
public int? UserId { get; set; }
[Column("REPR_GROUP")]
public int? RepGroupId { get; set; }
[Column("GROUP_ID")]
public int? GroupId { get; set; } = null;
[Column("REPR_USER")]
public int? RepUserId { get; set; }
[Column("VALID_FROM")]
public DateTime? ValidFrom { get; set; }
[Column("VALID_TO")]
public DateTime? ValidTo { get; set; }
[ForeignKey("UserId")]
public virtual User
#if NET7_0_OR_GREATER
?
#endif
User { get; set; }
[ForeignKey("RepGroupId")]
public virtual Group
#if NET7_0_OR_GREATER
?
#endif
RepGroup { get; set; }
[ForeignKey("GroupId")]
public virtual Group
#if NET7_0_OR_GREATER
?
#endif
Group { get; set; }
[ForeignKey("RepUserId")]
public virtual User
#if NET7_0_OR_GREATER
?
#endif
RepUser { get; set; }
}
}