0

asp.netページに関連データを表示するためのMVC3チュートリアルを実行しました。ビューモデルがあります:

using System; 
using System.Collections.Generic; 
using ContosoUniversity.Models; 

namespace ContosoUniversity.ViewModels 
{ 
    public class InstructorIndexData 
    { 
        public IEnumerable<Instructor> Instructors { get; set; } 
        public IEnumerable<Course> Courses { get; set; } 
        public IEnumerable<Enrollment> Enrollments { get; set; } 
    }
}

およびコントローラー、アクション付き:

using ContosoUniversity.ViewModels;

public ActionResult Index(Int32? id, Int32? courseID) 
{ 
    var viewModel = new InstructorIndexData(); 
    viewModel.Instructors = db.Instructors 
                              .Include(i => i.OfficeAssignment) 
                              .Include(i => i.Courses.Select(c => c.Department)) 
                              .OrderBy(i => i.LastName); 

    if (id != null) 
    { 
        ViewBag.InstructorID = id.Value; 
        viewModel.Courses = viewModel.Instructors.Where(i => i.InstructorID ==         id.Value).Single().Courses; 
    } 

    if (courseID != null) 
    { 
        ViewBag.CourseID = courseID.Value; 
        viewModel.Enrollments = viewModel.Courses.Where(x => x.CourseID ==  courseID).Single   ().Enrollments; 
    } 

    return View(viewModel); 
}

私がMVC4で試したとき、それはContosoUniversity.ViewModelsを使用するようなものです。存在しません

とで

viewModel.Courses = viewModel.Instructors.Where(i => i.InstructorID ==            id.Value).Single().Courses; 

viewmodel.instructorsをに変換できないため、エラーが発生しますIEnumerable<viewmodel.Instructors>

4

0 に答える 0