using System; namespace ScreenConnect; public class TransientString : IDisposable { public char[] Characters { get; } public static TransientString TryCreateInstance(char[] characters) { if (characters != null) { return new TransientString(characters); } return null; } public static TransientString TryCreateInstance(string stringValue) { if (stringValue != null) { return new TransientString(stringValue.ToCharArray()); } return null; } private TransientString(char[] characters) { Characters = characters; } public override string ToString() { return new string(Characters); } public void Dispose() { Characters.Clear(); } }