我有一个包含一大堆值的枚举(这里只显示了三个):
public enum LookupType
{
Alignment,
Language,
ReEmbedBehavior
}
Run Code Online (Sandbox Code Playgroud)
然后我有一个基于名为LookupType的varchar字段获取数据的方法...我想要的是将此方法的调用者限制为仅限于数据库中的查找类型...所以在我的WHERE子句的末尾,我想要将枚举名称作为字符串,而不是它的整数值.
然后,调用者将执行类似GetLookupsByLookupType(LookupType.Language)的操作,我的方法将调用为"where lookuptype ='Language'"
public List<Lookup> GetLookupsByLookupType(UnicornMedia.Core.DomainModel.Enumerations.LookupType lookupType)
{
var lookups = new List<Lookup>();
string SQL = String.Format(@"Select id, name, value, lookuptype
from lookups
where lookuptype = '{0}'", lookupType.ToString());
...<snip>...
}
Run Code Online (Sandbox Code Playgroud)
这可能是一些简单的事情,但我似乎不时碰到这个,而不是弄清楚,我最终只是使用一个字典...无论如何,它就是,谢谢