c# .net Adsense ADO.NET Linq Viruses/security asp.net MVC JQuery Angular-js Node-js SEO Java C++ SQL API Networking vb.net .Net Css JavaScript Generics c#.Net entity framework HTML Website host Website Construction Guide HTTP tutorial W3C tutorial Web Services JSON Psychology Ionic framework Angular ReactJS Python Computer Android
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

| | CSharp , Linq , MVC

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]]'.

Solution:

I changed the index.cshtml view replace

@model IList<IGrouping<string, string>>

With

@model IEnumerable<IGrouping<string, string>>

Afterwards it works perfectly.