Initial Commit ...

This commit is contained in:
2024-01-25 04:42:47 +03:30
commit 844b4c47ad
50 changed files with 2615 additions and 0 deletions
+51
View File
@@ -0,0 +1,51 @@
using System.ComponentModel.DataAnnotations.Schema;
using xCommons.Constants;
using xModels.Base;
namespace xIdentityModels.Navigations {
/// <summary>
/// Represent a Client Device which used by User
/// </summary>
public class XDevice : XBaseIntIDEntity {
/// <summary>
/// Operating System
/// </summary>
/// <value>device operating system identifier</value>
public string Os { get; set; }
/// <summary>
/// Operating System Version
/// </summary>
/// <value>which version of operatin system is in use</value>
public string OsVersion { get; set; }
/// <summary>
/// Device Browser
/// </summary>
/// <value>the Browser identifier</value>
public string Browser { get; set; }
/// <summary>
/// Browser Engine Agent
/// </summary>
/// <value>browser engine Agent</value>
public string UserAgent { get; set; }
/// <summary>
/// Type of client Device
/// </summary>
/// <value>represent device type <see>XDeviceType</see></value>
public XDeviceType DeviceType { get; set; }
//
#region User ...
/// <summary>
/// UserId
/// </summary>
/// <value>Represent this Devie belong to which User Identifier</value>
public string UserId { get; set; }
/// <summary>
/// User
/// </summary>
/// <value>Represent Device User <see>XUser</see></value>
[ForeignKey (nameof (UserId))]
public virtual XUser User { get; set; }
#endregion
}
}
+46
View File
@@ -0,0 +1,46 @@
using System.ComponentModel.DataAnnotations.Schema;
using xIdentityModels.Constants;
using xModels.Base;
namespace xIdentityModels.Navigations {
/// <summary>
/// represent a Follower of specific User
/// </summary>
public class XFriendshipFollower : XBaseIntIDEntity {
/// <summary>
/// XFriendshipState
/// </summary>
/// <value>state of Friendship at current moment <see>XFriendshipState</see></value>
public XFriendshipState State { get; set; }
//
#region User ...
/// <summary>
/// UserId
/// </summary>
/// <value>source User's Id</value>
public string UserId { get; set; }
/// <summary>
/// User
/// </summary>
/// <value>source User <see>XUser</see></value>
[ForeignKey (nameof (UserId))]
public virtual XUser User { get; set; }
#endregion
//
#region Dest User ...
/// <summary>
/// DestId
/// </summary>
/// <value>destination User's Id</value>
public string DestId { get; set; }
/// <summary>
/// Dest
/// </summary>
/// <value>dest User <see>XUser</see></value>
[ForeignKey (nameof (DestId))]
public virtual XUser Dest { get; set; }
#endregion
}
}
+46
View File
@@ -0,0 +1,46 @@
using System.ComponentModel.DataAnnotations.Schema;
using xIdentityModels.Constants;
using xModels.Base;
namespace xIdentityModels.Navigations {
/// <summary>
/// represent a Following of specific User
/// </summary>
public class XFriendshipFollowing : XBaseIntIDEntity {
/// <summary>
/// XFriendshipState
/// </summary>
/// <value>state of Friendship at current moment <see>XFriendshipState</see></value>
public XFriendshipState State { get; set; }
//
#region User ...
/// <summary>
/// UserId
/// </summary>
/// <value>source User's Id</value>
public string UserId { get; set; }
/// <summary>
/// User
/// </summary>
/// <value>source User <see>XUser</see></value>
[ForeignKey (nameof (UserId))]
public virtual XUser User { get; set; }
#endregion
//
#region Dest User ...
/// <summary>
/// DestId
/// </summary>
/// <value>destination User's Id</value>
public string DestId { get; set; }
/// <summary>
/// Dest
/// </summary>
/// <value>dest User <see>XUser</see></value>
[ForeignKey (nameof (DestId))]
public virtual XUser Dest { get; set; }
#endregion
}
}
+56
View File
@@ -0,0 +1,56 @@
using System;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using xModels.Base;
namespace xIdentityModels.Navigations {
/// <summary>
/// Represent a User's Avatar Entity
/// </summary>
public class XProfileImage : XBaseIntIDEntity {
/// <summary>
/// UserId
/// </summary>
/// <value>represent current Avatar belongs to which User</value>
public string UserId { get; set; }
/// <summary>
/// User
/// </summary>
/// <value>User instance <see>XUser</see></value>
[ForeignKey (nameof (UserId))]
public XUser User { get; set; }
/// <summary>
/// Name
/// </summary>
/// <value>Avatar's file name</value>
[Required]
[StringLength (255)]
public string Name { get; set; }
/// <summary>
/// Thumb
/// </summary>
/// <value>Avatar's thumbnail file's name</value>
[Required]
[StringLength (255)]
public string Thumb { get; set; }
/// <summary>
/// Path
/// </summary>
/// <value>Avatar's Image path on Profile Server</value>
[Required]
[StringLength (255)]
public string Path { get; set; }
/// <summary>
/// ThumbPath
/// </summary>
/// <value>Avatar's Thumbnail Image path on Profile Service</value>
[Required]
[StringLength (255)]
public string ThumbPath { get; set; }
/// <summary>
/// CreationDate
/// </summary>
/// <value>Upload Time</value>
public DateTime CreationDate { get; set; }
}
}