如何将List转换为Ilist? 更具体地说,这是代码:
public IList<Kendo.Mvc.IFilterDescriptor> GetFilters()
{
List<Kendo.Mvc.FilterDescriptor> filters = new List<Kendo.Mvc.FiterDescriptor>();
filters.Add(new Kendo.Mvc.FilterDescriptor("Column", Kendo.Mvc.FilterOperator.Contains, "1"));
return filters;
}
它给了我这个错误: &#34;无法隐式转换类型&#39; System.Collections.Generic.IList&#39;到&#39; System.Collections.Generic.IList&#39;。存在显式转换(您是否错过了演员?)&#34;
答案 0 :(得分:1)
您可以使用以下内容轻松完成此操作:
public IList<Kendo.Mvc.IFilterDescriptor> GetFilters()
{
IList<Kendo.Mvc.IFilterDescriptor> filters = new List<Kendo.Mvc.IFilterDescriptor>();
filters.Add(new Kendo.Mvc.FilterDescriptor("Column", Kendo.Mvc.FilterOperator.Contains, "1"));
return filters;
}
这样做的原因是因为我们创建了一个类型为&#39; IList&#39;的对象,其余的代码然后遵循这个对象,因为它都扩展了这些接口。
希望这有帮助! :)
答案 1 :(得分:0)
我找到了答案。
public IList<Kendo.Mvc.IFilterDescriptor> GetFilters()
{
List<Kendo.Mvc.FilterDescriptor> filters = new List<Kendo.Mvc.FiterDescriptor>();
filters.Add(new Kendo.Mvc.FilterDescriptor("Column", Kendo.Mvc.FilterOperator.Contains, "1"));
IList<Kendo.Mvc.IFilterDescriptor>() iFilters = new List<Kendo.Mvc.IFilterDescriptor>();
foreach(var filter in filters)
{
Kendo.Mvc.IFilterDescriptor temp = null;
temp = filter;
if(temp is Kendo.Mvc.FilterDescriptor)
{
iFilters.Add(temp);
}
}
return filters;
}