asp.net MVC

The model item passed into the dictionary is of type System.Linq.OrderedEnumerable but this dictionary requires a model item of type System.Collections.Generic.IList

The model item passed into the dictionary is of type System.Linq.OrderedEnumerable but this dictionary requires a model item of type System.Collections.Generic.IList, someone asked me to explain?

I got this following error while returning linq result passing to the view.

The model item passed into the dictionary is of type System.Linq.OrderedEnumerable but this dictionary requires a model item of type System.Collections.Generic.IList.

Here I passing to the partial view is,

View name = “_KeywordList”

var allkewords = RenderRazorViewToString(this.ControllerContext, "_KeywordList", keywords);
            var json = Json(new { allkewords });
            return json;

What I got exactly  is,

The model item passed into the dictionary is of type 'System.Linq.OrderedEnumerable 2[System.Linq.IGrouping 2[System.String,System.String],System.Int32]', but this dictionary requires a model item of type 'System.Collections.Generic.IList 1[System.Linq.IGrouping 2[System.String,System.String]]'.

model item passed into the dictionary is of type

Solution:

I changed the index.cshtml view replace

@model IList<IGrouping<string, string>>

With

@model IEnumerable<IGrouping<string, string>>

Afterwards it works perfectly.

Post your comments / questions