0
我可以创建自动通用帮助程序方法吗?让我解释。通用帮助程序方法c#
这是我现在该怎么办:
item.slp_spot_lang_prop.GetAvailable<slp_spot_lang_prop>(Model.LanguageAlternatives).slp_title
然后,我有这样的helper方法
public static T GetAvailable<T>(this IEnumerable<ILanguageEntity> helper, IQueryable<langa_language_alternative> languageAlt)
{
return (T) helper.SingleOrDefault(d => d.LanguageId == languageAlt.Single(e => e.langa_sitent_id == (int)d.SiteEntityId && e.langa_entid == d.EntityId && e.langa_wantedlangid == Global.SiteInfo.LanguageID).langa_availablelangid);
}
我希望能够做的仅仅是
item.slp_spot_lang_prop.GetAvailable(Model.LanguageAlternatives).slp_title
而且例如:
public static GetAvailable(this IEnumerable<ILanguageEntity> helper, IQueryable<langa_language_alternative> languageAlt)
{
var type = helper.GetEnumerator().Current.GetType().BaseType;
return (type) helper.SingleOrDefault(d => d.LanguageId == languageAlt.Single(e => e.langa_sitent_id == (int)d.SiteEntityId && e.langa_entid == d.EntityId && e.langa_wantedlangid == Global.SiteInfo.LanguageID).langa_availablelangid);
}
我希望你明白我的意思。返回类型应该是IEnumerable<IlanguageEntity>
的基本类型,在示例中应该是slp_spot_lang_prop。
整个目的是摆脱GetAvailable<type>()
,只是有GetAvailable()
,因为它是我知道已经是返回类型的帮助器方法。
'slp_spot_lang_prop','slp_title'&'langa_sitent_id'吸如命名。整个会议很糟糕。 – 2011-03-06 13:16:07