转换过滤器列表Telerik?

时间:2015-01-12 10:49:55

标签: c# .net telerik telerik-mvc

如何将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;

2 个答案:

答案 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;
}