diff --git a/FunGame.Core/Api/Factory/UserFactory.cs b/FunGame.Core/Api/Factory/UserFactory.cs
index ce3aa03..9a489de 100644
--- a/FunGame.Core/Api/Factory/UserFactory.cs
+++ b/FunGame.Core/Api/Factory/UserFactory.cs
@@ -10,9 +10,9 @@ namespace Milimoe.FunGame.Core.Api.Factory
return new User();
}
- internal static User GetInstance(DataSet? ds)
+ internal static User GetInstance(DataSet? DataSet)
{
- return new User(ds);
+ return new User(DataSet);
}
}
}
diff --git a/FunGame.Core/Api/Utility/General.cs b/FunGame.Core/Api/Utility/General.cs
index f71120e..4f54573 100644
--- a/FunGame.Core/Api/Utility/General.cs
+++ b/FunGame.Core/Api/Utility/General.cs
@@ -115,34 +115,6 @@ namespace Milimoe.FunGame.Core.Api.Utility
}
return -1;
}
-
- ///
- /// 将JsonElement转换为泛型
- ///
- /// 泛型
- /// 为JsonElement的对象
- ///
- public static T? ConvertJsonObject(object obj)
- {
- return ((JsonElement)obj).ToObject();
- }
- }
-
- ///
- /// Json工具类
- ///
- internal static class JsonUtility
- {
- ///
- /// 将JsonElement转换为泛型
- ///
- /// 泛型
- /// JsonElement
- ///
- internal static T? ToObject(this JsonElement element)
- {
- return JsonSerializer.Deserialize(element.GetRawText());
- }
}
#endregion
diff --git a/FunGame.Core/Entity/BaseEntity.cs b/FunGame.Core/Entity/BaseEntity.cs
index 0429982..975efa4 100644
--- a/FunGame.Core/Entity/BaseEntity.cs
+++ b/FunGame.Core/Entity/BaseEntity.cs
@@ -1,13 +1,13 @@
-using Milimoe.FunGame.Core.Interface.Entity;
-using System.Collections;
+using System.Collections;
+using Milimoe.FunGame.Core.Interface.Entity;
namespace Milimoe.FunGame.Core.Entity
{
public abstract class BaseEntity : IBaseEntity
{
- public long Id { get; set; } = 0;
- public Guid Guid { get; set; } = Guid.Empty;
- public string Name { get; set; } = "";
+ public virtual long Id { get; set; } = 0;
+ public virtual Guid Guid { get; set; } = Guid.Empty;
+ public virtual string Name { get; set; } = "";
public abstract bool Equals(IBaseEntity? other);
public abstract IEnumerator GetEnumerator();
diff --git a/FunGame.Core/Entity/User/User.cs b/FunGame.Core/Entity/User/User.cs
index df892d9..5adf260 100644
--- a/FunGame.Core/Entity/User/User.cs
+++ b/FunGame.Core/Entity/User/User.cs
@@ -6,7 +6,7 @@ namespace Milimoe.FunGame.Core.Entity
{
public class User : BaseEntity
{
- public new long Id { get; set; }
+ public override long Id { get; set; }
public string Username { get; set; } = "";
public string Password { get; set; } = "";
public DateTime RegTime { get; set; }
@@ -28,11 +28,11 @@ namespace Milimoe.FunGame.Core.Entity
}
- internal User(DataSet? ds)
+ internal User(DataSet? DataSet)
{
- if (ds != null && ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0)
+ if (DataSet != null && DataSet.Tables.Count > 0 && DataSet.Tables[0].Rows.Count > 0)
{
- DataRow row = ds.Tables[0].Rows[0];
+ DataRow row = DataSet.Tables[0].Rows[0];
Id = (long)row[UserQuery.Column_UID];
Username = (string)row[UserQuery.Column_Username];
Password = (string)row[UserQuery.Column_Password];
@@ -40,12 +40,12 @@ namespace Milimoe.FunGame.Core.Entity
LastTime = (DateTime)row[UserQuery.Column_LastTime];
Email = (string)row[UserQuery.Column_Email];
NickName = (string)row[UserQuery.Column_Nickname];
- IsAdmin = (int)row[UserQuery.Column_IsAdmin] == 1;
- IsOperator = (int)row[UserQuery.Column_IsOperator] == 1;
- IsEnable = (int)row[UserQuery.Column_IsEnable] == 1;
- Credits = (decimal)row[UserQuery.Column_Credits];
- Materials = (decimal)row[UserQuery.Column_Materials];
- GameTime = (decimal)row[UserQuery.Column_GameTime];
+ IsAdmin = Convert.ToInt32(row[UserQuery.Column_IsAdmin]) == 1;
+ IsOperator = Convert.ToInt32(row[UserQuery.Column_IsOperator]) == 1;
+ IsEnable = Convert.ToInt32(row[UserQuery.Column_IsEnable]) == 1;
+ Credits = Convert.ToDecimal(row[UserQuery.Column_Credits]);
+ Materials = Convert.ToDecimal(row[UserQuery.Column_Materials]);
+ GameTime = Convert.ToDecimal(row[UserQuery.Column_GameTime]);
AutoKey = (string)row[UserQuery.Column_AutoKey];
}
}
diff --git a/FunGame.Core/Library/Common/Network/JsonObject.cs b/FunGame.Core/Library/Common/Network/JsonObject.cs
index fa26ef2..44e83ae 100644
--- a/FunGame.Core/Library/Common/Network/JsonObject.cs
+++ b/FunGame.Core/Library/Common/Network/JsonObject.cs
@@ -1,4 +1,5 @@
using Newtonsoft.Json;
+using Newtonsoft.Json.Linq;
using Milimoe.FunGame.Core.Library.Constant;
namespace Milimoe.FunGame.Core.Library.Common.Network
@@ -11,12 +12,21 @@ namespace Milimoe.FunGame.Core.Library.Common.Network
public object[] Parameters { get; }
public string JsonString { get; }
+ private JArray? JArray;
+
public JsonObject(SocketMessageType MessageType, Guid Token, params object[] Parameters)
{
this.MessageType = MessageType;
this.Token = Token;
this.Parameters = Parameters;
- this.JsonString = JsonConvert.SerializeObject(this);
+ this.JsonString = JsonConvert.SerializeObject(this, Formatting.Indented);
+ }
+
+ public T? GetObject(int i)
+ {
+ if (i >= Parameters.Length) throw new IndexOutOfArrayLengthException();
+ JArray ??= JArray.FromObject(Parameters);
+ return JArray[i].ToObject();
}
public static string GetString(SocketMessageType MessageType, Guid Token, params object[] Parameters)
@@ -29,4 +39,5 @@ namespace Milimoe.FunGame.Core.Library.Common.Network
return JsonConvert.DeserializeObject(JsonString);
}
}
+
}
diff --git a/FunGame.Core/Library/Common/Network/SocketObject.cs b/FunGame.Core/Library/Common/Network/SocketObject.cs
index 334e27a..a22d9bb 100644
--- a/FunGame.Core/Library/Common/Network/SocketObject.cs
+++ b/FunGame.Core/Library/Common/Network/SocketObject.cs
@@ -8,13 +8,24 @@ namespace Milimoe.FunGame.Core.Library.Common.Network
public Guid Token { get; } = Guid.Empty;
public object[] Parameters { get; } = Array.Empty