我的字典提供了一些基于给定NWS enum
值的字符串处理方法:
var nwsToStringConverters = new Dictionary<NWS, Func<MeteoParameter, string>>
{
{NWS.Unknown, intensity => "some string"},
{NWS.Precipitation, intensity => AddIntensity("some string2", intensity, KindOfAdjective.Plural)},
{NWS.FreezingRain, intensity => AddIntensity("some string3", intensity, KindOfAdjective.Masculine)},
//....more elements here
};
AddIntensity
是我的处理方法。
KindOfAdjective
是我的枚举。
MeteoParameter
是我的DTO。
代码分析警告我CA1502。
但是如果将intensity => AddIntensity(..)
更改为命名函数,则不再警告我。但肯定我不需要30种方法,只有1个字符串常量才有区别。有什么优雅的方法来解决这个问题吗?