Introduced a `Profile` navigation property in the `RecActionView` class, linked to the `ProfileId` column using the `[ForeignKey]` attribute. The `Profile` property is nullable to support cases where no related `Profile` exists.
120 lines
3.3 KiB
C#
120 lines
3.3 KiB
C#
using System.ComponentModel.DataAnnotations;
|
|
using System.ComponentModel.DataAnnotations.Schema;
|
|
|
|
namespace ReC.Domain.Entities;
|
|
|
|
/// <summary>
|
|
/// Represents the VWREC_ACTION view from the database.
|
|
///
|
|
/// All properties are defined as nullable to provide flexibility in case the underlying view
|
|
/// changes in production (e.g., columns added, removed, or modified). This approach prevents
|
|
/// runtime mapping errors and ensures the application can handle schema changes without
|
|
/// requiring immediate code updates.
|
|
/// </summary>
|
|
[Table("VWREC_ACTION", Schema = "dbo")]
|
|
public class RecActionView
|
|
{
|
|
[Column("ACTION_ID")]
|
|
public required long Id { get; set; }
|
|
|
|
[Column("PROFILE_ID")]
|
|
public long? ProfileId { get; set; }
|
|
|
|
[ForeignKey("ProfileId")]
|
|
public Profile? Profile { get; set; }
|
|
|
|
[Column("PROFILE_NAME")]
|
|
[MaxLength(100)]
|
|
public string? ProfileName { get; set; }
|
|
|
|
[Column("PROFILE_TYPE")]
|
|
[MaxLength(20)]
|
|
public string? ProfileType { get; set; }
|
|
|
|
[Column("PROFILE_SEQUENCE")]
|
|
public byte? ProfileSequence { get; set; }
|
|
|
|
[Column("ENDPOINT_ID")]
|
|
public long? EndpointId { get; set; }
|
|
|
|
[Column("ENDPOINT_URI")]
|
|
[MaxLength(4000)]
|
|
public string? EndpointUri { get; set; }
|
|
|
|
[Column("ENDPOINT_AUTH_ID")]
|
|
public long? EndpointAuthId { get; set; }
|
|
|
|
[Column("ENDPOINT_AUTH_TYPE")]
|
|
[MaxLength(50)]
|
|
public string? EndpointAuthType { get; set; }
|
|
|
|
[Column("ENDPOINT_AUTH_API_KEY")]
|
|
[MaxLength(300)]
|
|
public string? EndpointAuthApiKey { get; set; }
|
|
|
|
[Column("ENDPOINT_AUTH_API_VALUE")]
|
|
[MaxLength(300)]
|
|
public string? EndpointAuthApiValue { get; set; }
|
|
|
|
[Column("ENDPOINT_AUTH_API_KEY_ADD_TO")]
|
|
[MaxLength(20)]
|
|
public string? EndpointAuthApiKeyAddTo { get; set; }
|
|
|
|
[Column("ENDPOINT_AUTH_TOKEN")]
|
|
[MaxLength(300)]
|
|
public string? EndpointAuthToken { get; set; }
|
|
|
|
[Column("ENDPOINT_AUTH_USERNAME")]
|
|
[MaxLength(200)]
|
|
public string? EndpointAuthUsername { get; set; }
|
|
|
|
[Column("ENDPOINT_AUTH_PASSWORD")]
|
|
[MaxLength(200)]
|
|
public string? EndpointAuthPassword { get; set; }
|
|
|
|
[Column("ENDPOINT_AUTH_DOMAIN")]
|
|
[MaxLength(100)]
|
|
public string? EndpointAuthDomain { get; set; }
|
|
|
|
[Column("ENDPOINT_AUTH_WORKSTATION")]
|
|
[MaxLength(100)]
|
|
public string? EndpointAuthWorkstation { get; set; }
|
|
|
|
[Column("ENDPOINT_PARAMS_ID")]
|
|
public short? EndpointParamsId { get; set; }
|
|
|
|
[Column("SQL_CONNECTION_ID")]
|
|
public short? SqlConnectionId { get; set; }
|
|
|
|
[Column("SQL_CONNECTION_SERVER")]
|
|
[MaxLength(150)]
|
|
public string? SqlConnectionServer { get; set; }
|
|
|
|
[Column("SQL_CONNECTION_DB")]
|
|
[MaxLength(100)]
|
|
public string? SqlConnectionDb { get; set; }
|
|
|
|
[Column("SQL_CONNECTION_USERNAME")]
|
|
[MaxLength(100)]
|
|
public string? SqlConnectionUsername { get; set; }
|
|
|
|
[Column("SQL_CONNECTION_PASSWORD")]
|
|
[MaxLength(100)]
|
|
public string? SqlConnectionPassword { get; set; }
|
|
|
|
[Column("REST_TYPE")]
|
|
[MaxLength(20)]
|
|
public string? RestType { get; set; }
|
|
|
|
[Column("PREPROCESSING_QUERY")]
|
|
public string? PreprocessingQuery { get; set; }
|
|
|
|
[Column("HEADER_QUERY")]
|
|
public string? HeaderQuery { get; set; }
|
|
|
|
[Column("BODY_QUERY")]
|
|
public string? BodyQuery { get; set; }
|
|
|
|
[Column("POSTPROCESSING_QUERY")]
|
|
public string? PostprocessingQuery { get; set; }
|
|
} |