diff --git a/Pilz.Cryptography/Helpers.cs b/Pilz.Cryptography/Helpers.cs index f37e252..4a7405d 100644 --- a/Pilz.Cryptography/Helpers.cs +++ b/Pilz.Cryptography/Helpers.cs @@ -41,11 +41,7 @@ public static class Helpers var dateTime = DateTime.UtcNow.ToString("yyyyMMddHHmmssfffffff"); var type = typeof(T).ToString(); var together = sn + dateTime + type + var; - - var md5 = MD5.Create(); - var hash = BitConverter.ToString(md5.ComputeHash(Encoding.Default.GetBytes(together))).Replace("-", string.Empty); - md5.Dispose(); - + var hash = BitConverter.ToString(MD5.HashData(Encoding.Default.GetBytes(together))).Replace("-", string.Empty); return hash; } } diff --git a/Pilz.Cryptography/UniquieID.cs b/Pilz.Cryptography/UniquieID.cs index 2f03a02..3500f79 100644 --- a/Pilz.Cryptography/UniquieID.cs +++ b/Pilz.Cryptography/UniquieID.cs @@ -52,7 +52,7 @@ public class UniquieID : IUniquieID GenerateOnGet = true; } - [Obsolete] + [Obsolete("Use the enum 'UniquieIDGenerationMode' instead of a simple boolean.")] public UniquieID(bool autoGenerate) : this(autoGenerate ? UniquieIDGenerationMode.GenerateOnInit : UniquieIDGenerationMode.None) { } @@ -121,9 +121,19 @@ public class UniquieID : IUniquieID 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 UniquieID(string id) => new UniquieID() { ID = id }; - public static implicit operator UniquieID(int id) => new UniquieID() { ID = Convert.ToString(id) }; + public static implicit operator UniquieID(string id) => new() { ID = 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);