저는 ASP.NET MVC에서 처음 경험을했으며 몇 가지 기사를 읽은 후에 MVC로 새 프로젝트를 시작하기로 결정했습니다.ASP.NET MVC의 다중 데이터베이스
그리고 ADO.net 엔티티 데이터 모델을 사용하고 만들기/삭제/세부 정보/편집/색인을 만들었습니다. 그것은 잘 작동합니다. 일부 필드는 HR 데이터베이스와 같은 다른 데이터베이스에서 제공되기 때문에 사용자 인터페이스를 향상시킬 계획입니다. 직원 정보입니다.
예를 들어 내 양식에서 직원 이름을 선택하려면 DropDownList를 사용해야하며 그 데이터는 위에서 언급 한 것처럼 다른 데이터베이스 인 HR에서 가져옵니다. 한 모델에서 차이 데이터베이스에 액세스하는 방법을 모르겠다. 여기에 물었다. How to solve multiple databases in one edmx for ASP.net MVC?
그러나 다른 데이터베이스에 대해 하나 이상의 모델을 만들고 Linq와 결합하려고 시도했습니다.
//
// GET: /ARS/
public ActionResult Index()
{
var employee = new List<EMPLOYEE>(chr.EMPLOYEEs);
var reqform = new List<RequestForm>(ars.RequestForms.Include(r => r.Genre));
var requestforms = from r in reqform
join e in employee on r.PrjDeptMgr equals e.EmployeeID
select new
{
r.FormID,
r.GenreID,
r.JobNo,
r.Description,
r.StartDate,
r.EndDate,
r.PrjDeptMgr,
r.IsAgreed,
r.Genre
};
//var requestforms = ars.RequestForms.Include(r => r.Genre);
return View(requestforms.ToList());
}
하지만 사전에 전달 모델 항목 유형 'System.Collections.Generic.List 1[<>f__AnonymousType2
9 [선택 System.Int32, 선택 System.Int32, 선택 System.String입니다
이 오류가 발생했습니다 System.String, System.String, System.Boolean, Access_Request_System.Models.Genre]] '이 사전에는'System.Collections.Generic.IEnumerable`1 유형의 모델 항목이 필요합니다. [System.Collections.Generic.IEnumerable`1 [System.String, System.DateTime, System.DateTime, Access_Request_System.Models.RequestForm] '으로 설정하십시오.
정말이 경우에 대한 아이디어가 없습니다 ... 제발!
그래서 내가 ViewModel을 사용해야한다는 뜻입니까? 그렇다면 EditTemplate에서 드롭 다운 목록을 어떻게 사용합니까? 예 : PrdDeptMgr에 ddl을 사용하고 다른 데이터베이스 형태로 바인드 그리고 감사합니다 ... – CMMaung
' 보기()'는 귀하의보기 모델입니다. 뷰 파일에 지정된 뷰 모델 유형이 OK입니다. 그것은 당신이 넘겨 준 값 ('List')이 틀 렸습니다. 드롭 다운 목록은 어떻게 든 채워 져야합니다 (이는 당신에게 달렸습니다). 나는 드롭 다운리스트 AFAIK를 지원하는 편집 템플릿에 대해 알지 못합니다. –
답변 해 주셔서 감사합니다. :) – CMMaung