좋아, 이것은 정말로 초보자 질문이지만 난처하게되었습니다. ViewModel을 사용하여 엔티티 개체에서 내 데이터를 가져 와서 telerik mvc 그리드를 채우려고합니다.ViewModel (MVC3)을 사용하여 Telerik 그리드에 채우기
이 시점에서 나는 조금 혼란스럽고 도움이 필요합니다.
나는 오류 메시지를 이해하고 있지만 MVC를 처음 접한 이래로이 문제를 어떻게 해결해야할지 모르겠습니다. 암시 적으로 'System.Linq.IQueryable'에 유형 'System.Linq.IQueryable을'변환 할 수 없습니다
---- ERROR ----
오류 1. 명시 적 변환 (? 당신이 캐스트를 누락) ProjectRepository.cs (23) (20) MvcMyAPP이
내가이 뷰 모델이 존재합니다
--VIEWMODEL--
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Mvc;
using System.Web.UI.WebControls;
namespace mvcMyModel.ViewModels
{
public class ProjectViewModel
{
public IQueryable<mvcMyAPP.Models.ProjectRepository> ProjectList
{
get;
set;
}
}
}
을 --CONTROLLER--
namespace MvcMyAPP.Controllers
{
public class HomeController : Controller
{
// GET: /Home/
ProjectRepository Repository = new ProjectRepository();
public ActionResult Index()
{
ProjectViewModel objProjectViewModel = new ProjectViewModel();
objProjectViewModel.ProjectList = Repository.GetProjects();
return View(objProjectViewModel);
return View();
}
}
}
---- REPOSITORY (MODEL) -----
namespace mvcMyAPP.Models
{
public class ProjectRepository
{
mvcMyAPP.Models.MYEntities MYDB = new MYEntities();
//Fetching data from table
public IQueryable<mvcMyAPP.ViewModels.ProjectViewModel> GetProjects()
{
var vProjects = (from tblProjects in MYDB.Projects
select tblProjects);
return vProjects;
}
}
--- GRID ---
@{Html.Telerik().Grid(Model.ProjectList)
.Name(
"Grid")
.Pageable()
.Sortable()
.Filterable()
.Groupable()
.Render();
}
좋아, 내 엔터티 클래스는 프로젝트에서 만든 네임 스페이스와 거의 동일한 네임 스페이스를가집니다. 컨트롤러와 모델 등을 위해 mvcMyAPP를 사용했습니다. Entity 클래스에는 MvcMyAPP의 네임 스페이스가 있습니다. 자본 M은 간단하게 엔티티 클래스를 사용할 수 없게 만들었고 나는주의를 기울이지 않았다. 반환 유형으로 MvcMyAPP.T_PROJECT에 IQueryable 세트에 액세스하면 작동했습니다. W! –
Keith
추가 정보를 제공하기 위해 의견을 게시 할 필요는 없습니다. 질문을 편집하십시오. – dandan78