我是C#的初学者。我有一个名为config
的类,其中一个字符串字段名为kye
。
当我应用类的GET
属性时,属性必须返回一个不同类型的变量kye
(Int
或bool
或String
)。
我需要在enum
运算符的帮助下实现这一点。不知道怎么办?
答案 0 :(得分:1)
据我所知,语言中没有这样的东西,所以你必须手动完成。一个简单的方法是:
public object GetKye(KyeType type)
{
switch (type)
{
case KyeType.String:
return this.kye;
case KyeType.Int32:
return Int32.Parse(this.kye);
case KyeType.Bool:
return this.kye.ToLower().Equals("true");
}
return null;
}
答案 1 :(得分:1)
这消除了在代码中进行强制转换但不安全的需要。它需要大量的错误处理。
public T Kye<T>(KyeEnum Key)
{
return (T)kye;
}
或者这就是你所追求的:
public Tuple<int, bool, string> Kye(KyeEnum Key)
{
return new Tuple<int, bool, string>(nKye, bKye, sKye);
}