| 概要
よく使うし、Extensionで実装することが多かったので
このスクリプトだけ入れておけばOKなものを作った。
中身はTryParseしているだけのつくり。特に解説はない。
| ソースコード全文
EnumParser.cs
using System;
/// <summary>
/// Enumのパース用
/// </summary>
public static class EnumParser
{
public static T Parse<T>(string value) where T : struct, Enum
{
T result;
if (!Enum.TryParse(value, true, out result))
{
throw new ArgumentException($"'{value}' is not a valid value for {typeof(T).Name}.");
}
return result;
}
}
| 使用例
using System;
enum WeaponType
{
Sword,
Spear,
Axe,
}
void Func(string _weaponType)
{
WeaponType weapon = EnumParser.Parse<WeaponType>(_weaponType);
}