add static GenerateNew methods for UniquieID
This commit is contained in:
@@ -41,11 +41,7 @@ public static class Helpers
|
|||||||
var dateTime = DateTime.UtcNow.ToString("yyyyMMddHHmmssfffffff");
|
var dateTime = DateTime.UtcNow.ToString("yyyyMMddHHmmssfffffff");
|
||||||
var type = typeof(T).ToString();
|
var type = typeof(T).ToString();
|
||||||
var together = sn + dateTime + type + var;
|
var together = sn + dateTime + type + var;
|
||||||
|
var hash = BitConverter.ToString(MD5.HashData(Encoding.Default.GetBytes(together))).Replace("-", string.Empty);
|
||||||
var md5 = MD5.Create();
|
|
||||||
var hash = BitConverter.ToString(md5.ComputeHash(Encoding.Default.GetBytes(together))).Replace("-", string.Empty);
|
|
||||||
md5.Dispose();
|
|
||||||
|
|
||||||
return hash;
|
return hash;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -52,7 +52,7 @@ public class UniquieID : IUniquieID
|
|||||||
GenerateOnGet = true;
|
GenerateOnGet = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
[Obsolete]
|
[Obsolete("Use the enum 'UniquieIDGenerationMode' instead of a simple boolean.")]
|
||||||
public UniquieID(bool autoGenerate) : this(autoGenerate ? UniquieIDGenerationMode.GenerateOnInit : UniquieIDGenerationMode.None)
|
public UniquieID(bool autoGenerate) : this(autoGenerate ? UniquieIDGenerationMode.GenerateOnInit : UniquieIDGenerationMode.None)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
@@ -121,9 +121,19 @@ public class UniquieID : IUniquieID
|
|||||||
return base.Equals(obj);
|
return base.Equals(obj);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static UniquieID GenerateNew()
|
||||||
|
{
|
||||||
|
return new UniquieID(UniquieIDGenerationMode.GenerateOnInit);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static UniquieID GenerateNew(bool simpleMode)
|
||||||
|
{
|
||||||
|
return new UniquieID(UniquieIDGenerationMode.GenerateOnInit, simpleMode);
|
||||||
|
}
|
||||||
|
|
||||||
public static implicit operator string(UniquieID id) => id.ID;
|
public static implicit operator string(UniquieID id) => id.ID;
|
||||||
public static implicit operator UniquieID(string id) => new UniquieID() { ID = id };
|
public static implicit operator UniquieID(string id) => new() { ID = id };
|
||||||
public static implicit operator UniquieID(int id) => new UniquieID() { ID = Convert.ToString(id) };
|
public static implicit operator UniquieID(int id) => new() { ID = Convert.ToString(id) };
|
||||||
|
|
||||||
public static bool operator ==(UniquieID left, UniquieID right) => left.ID.Equals(right.ID);
|
public static bool operator ==(UniquieID left, UniquieID right) => left.ID.Equals(right.ID);
|
||||||
public static bool operator !=(UniquieID left, UniquieID right) => !left.ID.Equals(right.ID);
|
public static bool operator !=(UniquieID left, UniquieID right) => !left.ID.Equals(right.ID);
|
||||||
|
|||||||
Reference in New Issue
Block a user