我想重寫一個搜索幫助使用泛型而不是我下面有兩個相同的方法,除了傳入的列表類型。當我將<T>
添加到類然後插入<T>
到每個列表的類型聲明,我得到以下錯誤:C#通用搜索助手
類型'T'必須是不可爲空的值類型,以便將其用作泛型類型或方法'ProjectName中的參數'T'。 Helpers.Extensions.AttributeExtensions.GetDescription(T)」
public class SearchFilterHelper
{
public static SelectList GenreSelectList(List<GenreFilter> filters, int selectedValue = 0)
{
var GenreList = filters.Select(g => new { Value = g.ToString(), Description = g.GetDescription() });
return new SelectList(GeneratedList, "Value", "Description", selectedValue.ToString());
}
public static SelectList PublisherSelectList(List<PublisherFilter> filters, int selectedValue = 0)
{
var GeneratedList = filters.Select(g => new { Value = g.ToString(), Description = g.GetDescription() });
return new SelectList(GeneratedList, "Value", "Description", selectedValue.ToString());
}
}
這是我在使用泛型我第一次嘗試ñ幫助和理解如何重寫這個任何幫助,一如既往,讚賞...
不能幫助你,如果我不知道什麼GenreFilter和PublisherFilter由 – 2015-02-06 15:44:46
類型篩選和PublisherFIlter都來自枚舉,下面whcih的格式是: '公共枚舉GenreFilter { FamilyLife = 1, 健身= 2, 兒童= 3, 電腦= 4, 烹飪= 5, SelfHelp = 6, 商務= 7, 文學= 8 }' – michaelk46 2015-02-06 15:47:24
這是一噸的自定義類型。你需要包含它們,當你不知道具體細節時很難做出更通用的東西。 – nvoigt 2015-02-06 15:48:55