Код: Выделить всё
string key = "ABC123";
Следующим этапом является создание класса ResourceKey, который инициализируется из строки. Затем я могу проверить формат строки во время выполнения, например
Код: Выделить всё
ResourceKey key = "ABC123";
Код: Выделить всё
using System.Diagnostics;
using System.Text.RegularExpressions;
class ResourceKey
{
public string Key { get; set; }
public static implicit operator ResourceKey (string s)
{
Debug.Assert(Regex.IsMatch(s, @"^[A-Z]{3}[0-9]{3}$"));
return new ResourceKey () { Key = s };
}
}
Код: Выделить всё
ResourceKey k1 = "ABC123"; // compiles
ResourceKey k2 = "DEF456"; // compiles
ResourceKey k3 = "hello world"; // error at compile time
Спасибо
Подробнее здесь: https://stackoverflow.com/questions/506 ... in-c-sharp
Мобильная версия