diff --git a/EnvelopeGenerator.Application/DTOs/ConfigDto.cs b/EnvelopeGenerator.Application/DTOs/ConfigDto.cs
index 721d7524..17dfc4ff 100644
--- a/EnvelopeGenerator.Application/DTOs/ConfigDto.cs
+++ b/EnvelopeGenerator.Application/DTOs/ConfigDto.cs
@@ -3,19 +3,45 @@ using Microsoft.AspNetCore.Mvc;
using System.ComponentModel.DataAnnotations.Schema;
using System.Text.Json.Serialization;
-namespace EnvelopeGenerator.Application.DTOs
+namespace EnvelopeGenerator.Application.DTOs;
+
+///
+/// Data Transfer Object representing configuration settings.
+///
+[ApiExplorerSettings(IgnoreApi = true)]
+public class ConfigDto : IUnique
{
- [ApiExplorerSettings(IgnoreApi = true)]
- public record ConfigDto(
- string DocumentPath,
- int SendingProfile,
- string SignatureHost,
- string ExternalProgramName,
- string ExportPath) : IUnique
- {
- [NotMapped]
- [JsonIgnore]
- [Obsolete("Configuration does not have an ID; it represents a single table in the database.")]
- public int Id => throw new InvalidOperationException("This configuration does not support an ID as it represents a single row in the database.");
- };
+ ///
+ /// Gets or sets the path to the document.
+ ///
+ public string DocumentPath { get; set; }
+
+ ///
+ /// Gets or sets the sending profile identifier.
+ ///
+ public int SendingProfile { get; set; }
+
+ ///
+ /// Gets or sets the signature host URL or name.
+ ///
+ public string SignatureHost { get; set; }
+
+ ///
+ /// Gets or sets the name of the external program.
+ ///
+ public string ExternalProgramName { get; set; }
+
+ ///
+ /// Gets or sets the path where exports will be saved.
+ ///
+ public string ExportPath { get; set; }
+
+ ///
+ /// Gets the ID of the configuration.
+ /// This DTO represents a single row in the database and does not support an ID.
+ ///
+ [NotMapped]
+ [JsonIgnore]
+ [Obsolete("Configuration does not have an ID; it represents a single table in the database.")]
+ public int Id => throw new InvalidOperationException("This configuration does not support an ID as it represents a single row in the database.");
}
\ No newline at end of file
diff --git a/EnvelopeGenerator.Application/DTOs/DocumentReceiverElementDto.cs b/EnvelopeGenerator.Application/DTOs/DocumentReceiverElementDto.cs
index 04b9d0ad..8927357b 100644
--- a/EnvelopeGenerator.Application/DTOs/DocumentReceiverElementDto.cs
+++ b/EnvelopeGenerator.Application/DTOs/DocumentReceiverElementDto.cs
@@ -1,26 +1,96 @@
using DigitalData.Core.Abstractions;
using Microsoft.AspNetCore.Mvc;
-namespace EnvelopeGenerator.Application.DTOs
+namespace EnvelopeGenerator.Application.DTOs;
+
+///
+/// Data Transfer Object representing a positioned element assigned to a document receiver.
+///
+[ApiExplorerSettings(IgnoreApi = true)]
+public class DocumentReceiverElementDto : IUnique
{
- [ApiExplorerSettings(IgnoreApi = true)]
- public record DocumentReceiverElementDto(
- int Id,
- int DocumentId,
- int ReceiverId,
- int ElementType,
- double X,
- double Y,
- double Width,
- double Height,
- int Page,
- bool Required,
- string? Tooltip,
- bool ReadOnly,
- int AnnotationIndex,
- DateTime AddedWhen,
- DateTime? ChangedWhen,
- double Top,
- double Left
- ): IUnique;
+ ///
+ /// Gets or sets the unique identifier of the element.
+ ///
+ public int Id { get; set; }
+
+ ///
+ /// Gets or sets the identifier of the associated document.
+ ///
+ public int DocumentId { get; set; }
+
+ ///
+ /// Gets or sets the identifier of the receiver.
+ ///
+ public int ReceiverId { get; set; }
+
+ ///
+ /// Gets or sets the type of the element.
+ ///
+ public int ElementType { get; set; }
+
+ ///
+ /// Gets or sets the X coordinate of the element.
+ ///
+ public double X { get; set; }
+
+ ///
+ /// Gets or sets the Y coordinate of the element.
+ ///
+ public double Y { get; set; }
+
+ ///
+ /// Gets or sets the width of the element.
+ ///
+ public double Width { get; set; }
+
+ ///
+ /// Gets or sets the height of the element.
+ ///
+ public double Height { get; set; }
+
+ ///
+ /// Gets or sets the page number where the element appears.
+ ///
+ public int Page { get; set; }
+
+ ///
+ /// Gets or sets a value indicating whether the element is required.
+ ///
+ public bool Required { get; set; }
+
+ ///
+ /// Gets or sets the tooltip text for the element.
+ ///
+ public string? Tooltip { get; set; }
+
+ ///
+ /// Gets or sets a value indicating whether the element is read-only.
+ ///
+ public bool ReadOnly { get; set; }
+
+ ///
+ /// Gets or sets the annotation index for ordering or reference.
+ ///
+ public int AnnotationIndex { get; set; }
+
+ ///
+ /// Gets or sets the timestamp when the element was added.
+ ///
+ public DateTime AddedWhen { get; set; }
+
+ ///
+ /// Gets or sets the timestamp when the element was last changed, if applicable.
+ ///
+ public DateTime? ChangedWhen { get; set; }
+
+ ///
+ /// Gets or sets the top position of the element (in layout terms).
+ ///
+ public double Top { get; set; }
+
+ ///
+ /// Gets or sets the left position of the element (in layout terms).
+ ///
+ public double Left { get; set; }
}
\ No newline at end of file
diff --git a/EnvelopeGenerator.Application/DTOs/DocumentStatusDto.cs b/EnvelopeGenerator.Application/DTOs/DocumentStatusDto.cs
index a098746a..681ba505 100644
--- a/EnvelopeGenerator.Application/DTOs/DocumentStatusDto.cs
+++ b/EnvelopeGenerator.Application/DTOs/DocumentStatusDto.cs
@@ -1,18 +1,51 @@
using DigitalData.Core.Abstractions;
using Microsoft.AspNetCore.Mvc;
-namespace EnvelopeGenerator.Application.DTOs
+namespace EnvelopeGenerator.Application.DTOs;
+
+///
+/// Data Transfer Object representing the status of a document for a specific receiver.
+///
+[ApiExplorerSettings(IgnoreApi = true)]
+public class DocumentStatusDto : IUnique
{
- [ApiExplorerSettings(IgnoreApi = true)]
- public record DocumentStatusDto(
- int Id,
- int EnvelopeId,
- int ReceiverId,
- int Status,
- DateTime? StatusChangedWhen,
- DateTime AddedWhen,
- DateTime? ChangedWhen) : IUnique
- {
- public string? Value { get; set; }
- };
+ ///
+ /// Gets or sets the unique identifier of the document status entry.
+ ///
+ public int Id { get; set; }
+
+ ///
+ /// Gets or sets the ID of the associated envelope.
+ ///
+ public int EnvelopeId { get; set; }
+
+ ///
+ /// Gets or sets the ID of the receiver associated with this status.
+ ///
+ public int ReceiverId { get; set; }
+
+ ///
+ /// Gets or sets the current status code.
+ ///
+ public int Status { get; set; }
+
+ ///
+ /// Gets or sets the timestamp when the status was changed.
+ ///
+ public DateTime? StatusChangedWhen { get; set; }
+
+ ///
+ /// Gets or sets the timestamp when this record was added.
+ ///
+ public DateTime AddedWhen { get; set; }
+
+ ///
+ /// Gets or sets the timestamp when this record was last changed.
+ ///
+ public DateTime? ChangedWhen { get; set; }
+
+ ///
+ /// Gets or sets the display value associated with the status.
+ ///
+ public string? Value { get; set; }
}
\ No newline at end of file
diff --git a/EnvelopeGenerator.Application/DTOs/EnvelopeCertificateDto.cs b/EnvelopeGenerator.Application/DTOs/EnvelopeCertificateDto.cs
index 49852dce..d7782e64 100644
--- a/EnvelopeGenerator.Application/DTOs/EnvelopeCertificateDto.cs
+++ b/EnvelopeGenerator.Application/DTOs/EnvelopeCertificateDto.cs
@@ -1,16 +1,51 @@
using DigitalData.Core.Abstractions;
using Microsoft.AspNetCore.Mvc;
-namespace EnvelopeGenerator.Application.DTOs
+namespace EnvelopeGenerator.Application.DTOs;
+
+///
+/// Data Transfer Object representing certificate information for an envelope.
+///
+[ApiExplorerSettings(IgnoreApi = true)]
+public class EnvelopeCertificateDto : IUnique
{
- [ApiExplorerSettings(IgnoreApi = true)]
- public record EnvelopeCertificateDto(
- int Id,
- int EnvelopeId,
- string EnvelopeUuid,
- string EnvelopeSubject,
- int CreatorId,
- string CreatorName,
- string CreatorEmail,
- int EnvelopeStatus) : IUnique;
+ ///
+ /// Gets the unique identifier of the certificate.
+ ///
+ public int Id { get; init; }
+
+ ///
+ /// Gets the envelope ID associated with the certificate.
+ ///
+ public int EnvelopeId { get; init; }
+
+ ///
+ /// Gets the UUID of the envelope.
+ ///
+ public string EnvelopeUuid { get; init; }
+
+ ///
+ /// Gets the subject of the envelope.
+ ///
+ public string EnvelopeSubject { get; init; }
+
+ ///
+ /// Gets the ID of the creator of the envelope.
+ ///
+ public int CreatorId { get; init; }
+
+ ///
+ /// Gets the name of the creator.
+ ///
+ public string CreatorName { get; init; }
+
+ ///
+ /// Gets the email address of the creator.
+ ///
+ public string CreatorEmail { get; init; }
+
+ ///
+ /// Gets the current status of the envelope.
+ ///
+ public int EnvelopeStatus { get; init; }
}
\ No newline at end of file
diff --git a/EnvelopeGenerator.Application/DTOs/EnvelopeDocumentDto.cs b/EnvelopeGenerator.Application/DTOs/EnvelopeDocumentDto.cs
index 97ca20c2..92139c3f 100644
--- a/EnvelopeGenerator.Application/DTOs/EnvelopeDocumentDto.cs
+++ b/EnvelopeGenerator.Application/DTOs/EnvelopeDocumentDto.cs
@@ -1,15 +1,36 @@
using DigitalData.Core.Abstractions;
using Microsoft.AspNetCore.Mvc;
-namespace EnvelopeGenerator.Application.DTOs
+namespace EnvelopeGenerator.Application.DTOs;
+
+///
+/// Data Transfer Object representing a document within an envelope, including optional binary data and form elements.
+///
+[ApiExplorerSettings(IgnoreApi = true)]
+public class EnvelopeDocumentDto : IUnique
{
- [ApiExplorerSettings(IgnoreApi = true)]
- public record EnvelopeDocumentDto
- (
- int Id,
- int EnvelopeId,
- DateTime AddedWhen,
- byte[]? ByteData = null,
- IEnumerable? Elements = null
- ) : IUnique;
-}
\ No newline at end of file
+ ///
+ /// Gets or sets the unique identifier of the document.
+ ///
+ public int Id { get; set; }
+
+ ///
+ /// Gets or sets the envelope ID to which the document belongs.
+ ///
+ public int EnvelopeId { get; set; }
+
+ ///
+ /// Gets or sets the date and time when the document was added.
+ ///
+ public DateTime AddedWhen { get; set; }
+
+ ///
+ /// Gets or sets the binary data of the document, if available.
+ ///
+ public byte[]? ByteData { get; set; }
+
+ ///
+ /// Gets or sets the collection of elements associated with the document for receiver interactions, if any.
+ ///
+ public IEnumerable? Elements { get; set; }
+}
diff --git a/EnvelopeGenerator.Application/DTOs/EnvelopeDto.cs b/EnvelopeGenerator.Application/DTOs/EnvelopeDto.cs
index 4fa36caf..e1e82489 100644
--- a/EnvelopeGenerator.Application/DTOs/EnvelopeDto.cs
+++ b/EnvelopeGenerator.Application/DTOs/EnvelopeDto.cs
@@ -4,53 +4,52 @@ using DigitalData.UserManager.Application.DTOs.User;
using EnvelopeGenerator.Domain.Entities;
using Microsoft.AspNetCore.Mvc;
-namespace EnvelopeGenerator.Application.DTOs
+namespace EnvelopeGenerator.Application.DTOs;
+
+[ApiExplorerSettings(IgnoreApi = true)]
+public record EnvelopeDto : IUnique
{
- [ApiExplorerSettings(IgnoreApi = true)]
- public record EnvelopeDto() : IUnique
- {
- public int Id { get; set; }
+ public int Id { get; set; }
- public int UserId { get; set; }
+ public int UserId { get; set; }
- public int Status { get; set; }
+ public int Status { get; set; }
- public string StatusName { get; set; }
+ public string StatusName { get; set; }
- public string Uuid { get; set; }
+ public string Uuid { get; set; }
- [TemplatePlaceholder("[MESSAGE]")]
- public string Message { get; set; }
+ [TemplatePlaceholder("[MESSAGE]")]
+ public string Message { get; set; }
- public DateTime AddedWhen { get; set; }
+ public DateTime AddedWhen { get; set; }
- public DateTime? ChangedWhen { get; set; }
+ public DateTime? ChangedWhen { get; set; }
- [TemplatePlaceholder("[DOCUMENT_TITLE]")]
- public string Title { get; set; }
+ [TemplatePlaceholder("[DOCUMENT_TITLE]")]
+ public string Title { get; set; }
- public int? ContractType { get; set; }
+ public int? ContractType { get; set; }
- public string Language { get; set; }
+ public string Language { get; set; }
- public int? EnvelopeTypeId { get; set; }
+ public int? EnvelopeTypeId { get; set; }
- public int? CertificationType { get; set; }
+ public int? CertificationType { get; set; }
- public bool? UseAccessCode { get; set; }
+ public bool? UseAccessCode { get; set; }
- public bool TFAEnabled { get; init; }
+ public bool TFAEnabled { get; init; }
- public UserReadDto? User { get; set; }
+ public UserReadDto? User { get; set; }
- public EnvelopeType? EnvelopeType { get; set; }
+ public EnvelopeType? EnvelopeType { get; set; }
- public string? EnvelopeTypeTitle { get; set; }
+ public string? EnvelopeTypeTitle { get; set; }
- public bool IsAlreadySent { get; set; }
+ public bool IsAlreadySent { get; set; }
- public byte[]? DocResult { get; init; }
+ public byte[]? DocResult { get; init; }
- public IEnumerable? Documents { get; set; }
- }
+ public IEnumerable? Documents { get; set; }
}
\ No newline at end of file
diff --git a/EnvelopeGenerator.Application/DTOs/EnvelopeHistory/EnvelopeHistoryCreateDto.cs b/EnvelopeGenerator.Application/DTOs/EnvelopeHistory/EnvelopeHistoryCreateDto.cs
index 731b33a1..34235c5b 100644
--- a/EnvelopeGenerator.Application/DTOs/EnvelopeHistory/EnvelopeHistoryCreateDto.cs
+++ b/EnvelopeGenerator.Application/DTOs/EnvelopeHistory/EnvelopeHistoryCreateDto.cs
@@ -1,12 +1,34 @@
using Microsoft.AspNetCore.Mvc;
-namespace EnvelopeGenerator.Application.DTOs.EnvelopeHistory
+namespace EnvelopeGenerator.Application.DTOs.EnvelopeHistory;
+
+///
+/// Data Transfer Object for creating a new envelope history record.
+///
+public class EnvelopeHistoryCreateDto
{
- [ApiExplorerSettings(IgnoreApi = true)]
- public record EnvelopeHistoryCreateDto(
- int EnvelopeId,
- string UserReference,
- int Status,
- DateTime? ActionDate,
- string? Comment = null);
+ ///
+ /// Gets or sets the identifier of the envelope.
+ ///
+ public int EnvelopeId { get; set; }
+
+ ///
+ /// Gets or sets the user reference associated with the action.
+ ///
+ public required string UserReference { get; set; }
+
+ ///
+ /// Gets or sets the status of the envelope at the time of the action.
+ ///
+ public int Status { get; set; }
+
+ ///
+ /// Gets or sets the date and time when the action occurred.
+ ///
+ public DateTime? ActionDate { get; set; }
+
+ ///
+ /// Gets or sets an optional comment related to the action.
+ ///
+ public string? Comment { get; set; }
}
\ No newline at end of file
diff --git a/EnvelopeGenerator.Application/DTOs/EnvelopeTypeDto.cs b/EnvelopeGenerator.Application/DTOs/EnvelopeTypeDto.cs
index 05be1eac..6ab24f4c 100644
--- a/EnvelopeGenerator.Application/DTOs/EnvelopeTypeDto.cs
+++ b/EnvelopeGenerator.Application/DTOs/EnvelopeTypeDto.cs
@@ -1,23 +1,86 @@
using DigitalData.Core.Abstractions;
using Microsoft.AspNetCore.Mvc;
-namespace EnvelopeGenerator.Application.DTOs
+namespace EnvelopeGenerator.Application.DTOs;
+
+///
+/// Data Transfer Object representing a type of envelope with its configuration settings.
+///
+[ApiExplorerSettings(IgnoreApi = true)]
+public class EnvelopeTypeDto : IUnique
{
- [ApiExplorerSettings(IgnoreApi = true)]
- public record EnvelopeTypeDto(
- int Id,
- string Title,
- string Language,
- int? ExpiresDays,
- int? CertificationType,
- bool? UseAccessCode,
- int? FinalEmailToCreator,
- int? FinalEmailToReceivers,
- DateTime AddedWhen,
- DateTime? ChangedWhen,
- int? ExpiresWarningDays,
- bool? SendReminderEmails,
- int? FirstReminderDays,
- int? ReminderIntervalDays,
- int? ContractType) : IUnique;
+ ///
+ /// Gets or sets the unique identifier of the envelope type.
+ ///
+ public int Id { get; set; }
+
+ ///
+ /// Gets or sets the title of the envelope type.
+ ///
+ public string Title { get; set; }
+
+ ///
+ /// Gets or sets the language code used in this envelope type.
+ ///
+ public string Language { get; set; }
+
+ ///
+ /// Gets or sets the number of days after which the envelope expires.
+ ///
+ public int? ExpiresDays { get; set; }
+
+ ///
+ /// Gets or sets the certification type identifier.
+ ///
+ public int? CertificationType { get; set; }
+
+ ///
+ /// Gets or sets a value indicating whether an access code is required.
+ ///
+ public bool? UseAccessCode { get; set; }
+
+ ///
+ /// Gets or sets the final email template ID to be sent to the creator.
+ ///
+ public int? FinalEmailToCreator { get; set; }
+
+ ///
+ /// Gets or sets the final email template ID to be sent to the receivers.
+ ///
+ public int? FinalEmailToReceivers { get; set; }
+
+ ///
+ /// Gets or sets the timestamp when this envelope type was added.
+ ///
+ public DateTime AddedWhen { get; set; }
+
+ ///
+ /// Gets or sets the timestamp when this envelope type was last changed.
+ ///
+ public DateTime? ChangedWhen { get; set; }
+
+ ///
+ /// Gets or sets the number of days before expiry when a warning should be sent.
+ ///
+ public int? ExpiresWarningDays { get; set; }
+
+ ///
+ /// Gets or sets a value indicating whether reminder emails should be sent.
+ ///
+ public bool? SendReminderEmails { get; set; }
+
+ ///
+ /// Gets or sets the number of days before the first reminder is sent.
+ ///
+ public int? FirstReminderDays { get; set; }
+
+ ///
+ /// Gets or sets the interval in days between reminder emails.
+ ///
+ public int? ReminderIntervalDays { get; set; }
+
+ ///
+ /// Gets or sets the contract type associated with the envelope type.
+ ///
+ public int? ContractType { get; set; }
}
\ No newline at end of file
diff --git a/EnvelopeGenerator.Application/DTOs/Receiver/ReceiverCreateDto.cs b/EnvelopeGenerator.Application/DTOs/Receiver/ReceiverCreateDto.cs
index 068501b4..c05865bb 100644
--- a/EnvelopeGenerator.Application/DTOs/Receiver/ReceiverCreateDto.cs
+++ b/EnvelopeGenerator.Application/DTOs/Receiver/ReceiverCreateDto.cs
@@ -20,7 +20,7 @@ public record ReceiverCreateDto
}
[EmailAddress]
- public string EmailAddress { get; init; }
+ public required string EmailAddress { get; init; }
public string? TotpSecretkey { get; init; }
diff --git a/EnvelopeGenerator.Application/DTOs/Receiver/ReceiverReadDto.cs b/EnvelopeGenerator.Application/DTOs/Receiver/ReceiverReadDto.cs
index 4f2912a6..c7e7f6ed 100644
--- a/EnvelopeGenerator.Application/DTOs/Receiver/ReceiverReadDto.cs
+++ b/EnvelopeGenerator.Application/DTOs/Receiver/ReceiverReadDto.cs
@@ -1,5 +1,4 @@
using DigitalData.Core.Abstractions;
-using DigitalData.Core.DTO;
using EnvelopeGenerator.Application.DTOs.EnvelopeReceiver;
using Microsoft.AspNetCore.Mvc;
using System.Text.Json.Serialization;
@@ -7,19 +6,27 @@ using System.Text.Json.Serialization;
namespace EnvelopeGenerator.Application.DTOs.Receiver;
[ApiExplorerSettings(IgnoreApi = true)]
-public record ReceiverReadDto(
- int Id,
- string EmailAddress,
- string Signature,
- DateTime AddedWhen
- ) : BaseDTO(Id), IUnique
+public class ReceiverReadDto : IUnique
{
+ public int Id { get; set; }
+
+ public string EmailAddress { get; set; }
+
+ public string Signature { get; set; }
+
+ public DateTime AddedWhen { get; set; }
+
[JsonIgnore]
- public IEnumerable? EnvelopeReceivers { get; init; }
+ public IEnumerable? EnvelopeReceivers { get; set; }
public string? LastUsedName => EnvelopeReceivers?.LastOrDefault()?.Name;
public string? TotpSecretkey { get; set; } = null;
public DateTime? TfaRegDeadline { get; set; }
-};
\ No newline at end of file
+
+ public override int GetHashCode()
+ {
+ return Id.GetHashCode();
+ }
+}
\ No newline at end of file
diff --git a/EnvelopeGenerator.Application/DTOs/Receiver/ReceiverUpdateDto.cs b/EnvelopeGenerator.Application/DTOs/Receiver/ReceiverUpdateDto.cs
index f4d89410..203df159 100644
--- a/EnvelopeGenerator.Application/DTOs/Receiver/ReceiverUpdateDto.cs
+++ b/EnvelopeGenerator.Application/DTOs/Receiver/ReceiverUpdateDto.cs
@@ -3,5 +3,26 @@ using Microsoft.AspNetCore.Mvc;
namespace EnvelopeGenerator.Application.DTOs.Receiver;
+///
+/// Data Transfer Object for updating a receiver's information.
+///
[ApiExplorerSettings(IgnoreApi = true)]
-public record ReceiverUpdateDto(int Id, string? TotpSecretkey = null, DateTime? TfaRegDeadline = null) : IUnique;
\ No newline at end of file
+public class ReceiverUpdateDto : IUnique
+{
+ ///
+ /// Gets or sets the unique identifier of the receiver.
+ ///
+ public int Id { get; set; }
+
+ ///
+ /// Gets or sets the TOTP (Time-based One-Time Password) secret key.
+ /// Optional.
+ ///
+ public string? TotpSecretkey { get; set; }
+
+ ///
+ /// Gets or sets the deadline for two-factor authentication registration.
+ /// Optional.
+ ///
+ public DateTime? TfaRegDeadline { get; set; }
+}
\ No newline at end of file
diff --git a/EnvelopeGenerator.Application/DTOs/UserReceiverDto.cs b/EnvelopeGenerator.Application/DTOs/UserReceiverDto.cs
index 5a46789f..b46c3e0c 100644
--- a/EnvelopeGenerator.Application/DTOs/UserReceiverDto.cs
+++ b/EnvelopeGenerator.Application/DTOs/UserReceiverDto.cs
@@ -1,15 +1,46 @@
using DigitalData.Core.Abstractions;
using Microsoft.AspNetCore.Mvc;
-namespace EnvelopeGenerator.Application.DTOs
+namespace EnvelopeGenerator.Application.DTOs;
+
+///
+/// Data Transfer Object representing a user receiver with associated details.
+///
+[ApiExplorerSettings(IgnoreApi = true)]
+public class UserReceiverDto : IUnique
{
- [ApiExplorerSettings(IgnoreApi = true)]
- public record UserReceiverDto(
- int Id,
- int UserId,
- int ReceiverId,
- string Name,
- string CompanyName,
- string JobTitle,
- DateTime AddedWhen) : IUnique;
+ ///
+ /// Gets or sets the unique identifier of the user receiver.
+ ///
+ public int Id { get; set; }
+
+ ///
+ /// Gets or sets the identifier of the user associated with the receiver.
+ ///
+ public int UserId { get; set; }
+
+ ///
+ /// Gets or sets the identifier of the receiver.
+ ///
+ public int ReceiverId { get; set; }
+
+ ///
+ /// Gets or sets the name of the receiver.
+ ///
+ public string Name { get; set; }
+
+ ///
+ /// Gets or sets the company name of the receiver.
+ ///
+ public string CompanyName { get; set; }
+
+ ///
+ /// Gets or sets the job title of the receiver.
+ ///
+ public string JobTitle { get; set; }
+
+ ///
+ /// Gets or sets the timestamp when the user receiver was added.
+ ///
+ public DateTime AddedWhen { get; set; }
}
\ No newline at end of file