2016-07-08 5 views
12

मैं अपने MVC 5 आवेदन X.PagedList.Mvcप्रकार 'IEnumerable <>' एक विधानसभा कि

के लिए निम्न nuget पैकेज को शामिल किया है मैं के रूप में मेरे नियंत्रक/दृश्य में परिणाम वापस संदर्भित नहीं है में परिभाषित किया गया है इस प्रकार है:

// Repo 
public IPagedList<Post> GetPagedPosts(int pageNumber, int pageSize) 
{ 
    var posts = _context.Post 
     .Include(x => x.Category) 
     .Include(x => x.Type); 

    // Return a paged list 
    return posts.ToPagedList(pageNumber, pageSize); 

} 

// View model 
public class PostViewModel 
{ 
    public IPagedList<Post> Posts { get; set; } 
    ... 
} 

// Controller method 
public ActionResult Index(int? page) 
{ 

    int pageNumber = page ?? 1; 
    int pagesize = 5; 

    var posts = _PostRepository.GetPagedPosts(pageNumber, pagesize); 

    var viewModel = new PostViewModel 
    { 
     Posts = posts, 
     ... 
    }; 

    return View(viewModel); 
} 

// View 
@model MyApp.ViewModels.PostViewModel 
@using X.PagedList.Mvc; 
@using X.PagedList; 

<p>Page @(Model.Posts.PageCount < Model.Posts.PageNumber ? 0 : Model.Posts.PageNumber) of @Model.Posts.PageCount </p> 

लेकिन मेरे विचार में मैं निम्न त्रुटि The type 'IEnumerable<>' is defined in an assembly that is not referenced. System.Runtime...

हो रही है मैं अपने आवेदन में कोई project.json फ़ाइल है तो इस त्रुटि क्या है?

+0

आप बयानों का उपयोग कर दिखाया जा सका? – Win

+0

सुनिश्चित करें कि आपके पास 'System.Runtime' का संदर्भ नहीं है। इससे चीजें खराब हो सकती हैं –

+0

क्या आप संदर्भित कर रहे हैं और पीसीएल जैसे 'माइक्रोसॉफ्ट बीसीएल पोर्टेबिलिटी पैक'? सुनिश्चित करें कि आपके सभी असेंबली संस्करण समान हैं, अपना '.soo' हटाएं और एक साफ/निर्माण करें। –

उत्तर

12

करें कि आप अपने Web.config फ़ाइल में निम्नलिखित लाइनों किया हुआ है:

<compilation debug="true" targetFramework="4.6.1"> //don't need to change THIS line, just the content of this section 
    <assemblies> 
    <add assembly="System.Runtime, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> 
    <add assembly="System.Collections, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> 
    </assemblies> 
</compilation> 
+4

भविष्य के संदर्भ के लिए, मुझे अपना विजुअल स्टूडियो बंद करना पड़ा और फिर विजुअल स्टूडियो को फिर से खोलना पड़ा। इस जवाब का पालन करने के बाद भी त्रुटियां दूर नहीं हुईं, जब तक कि मैंने बंद नहीं किया और फिर से खोल दिया। – Rinktacular

+0

ऐसा लगता है कि 'XPagedList' को cshtml फ़ाइलों में मॉडल के बारे में चेतावनियों से छुटकारा पाने के लिए इन पंक्तियों की आवश्यकता है। मैंने सभी परियोजनाओं में बिन और ओबीजे फ़ोल्डरों को भी हटा दिया, विजुअल स्टूडियो 2017 बंद कर दिया और समाधान को फिर से खोल दिया। अब निर्माण कोई त्रुटि के साथ काम कर रहा है। –

संबंधित मुद्दे