나는 두 개의 서로 다른 소스에서 온 데이터를 제공하는 telerik mvc 그리드를 가지고있다. (연결하는다중 소스 그리드에서 필터링
public class Customer
{
public string Name {get;set;}
public Guid CreatorUserId {get;set;}
public string CreatorUsername
{
get
{
return System.Web.Security.Membership.GetUser(CreatorUserId).UserName;
}
}
}
내가 고객과 같은 테이블에서 고객 정보를 저장 (ID, 이름, CreatorUserId) 다음 CreatorFullname는 멤버 자격 공급자에서 온다 :
내가이 같은 모델을 가지고 가정 Active Directory로).위의 모델을 Telerik 그리드 (ajax 사용 옵션 포함)에 바인딩하면 모든 것이 ok (페이징, ajax-paging, ...)입니다. CreatorUsername에 대한 정렬 작업 (올바른 것은 아니지만)이 주요 문제는 필터링에 관한 것입니다. CreatorUsername이 주 원본에서 Customer 테이블의 일부가 아니기 때문에 실패합니다.
어떻게 극복 할 수 있습니까? (특히 Telerik-MVC 그리드를 사용할 때)
필자는 필요한 열이 동일한 데이터베이스에 없다고 말했습니다. Active Directory에 있음 –
동일한 데이터베이스가 아닌 경우 AD 정보를 필드로 포함하는 개체를 갖거나 찾고있는 AD 필드의 IEnumerable을 Grid에 제공해야합니다 에 대한. 또한 그리드와 데이터 사이에 추가 레이어를 제공 할 수있는 패턴을 활용하여 DB로 커밋하기 전에이 레이어를 업데이트 할 수 있습니다. – carlbergenhem
Carl, 문제는 데이터를 표시하거나 업데이트하는 것이 아닙니다. 문제는 필자가 telerik 그리드에 의해 자동으로 수행되는 컬럼 필터링을 사용하고자 할 때 발생합니다. "CreatorUsername"필터링에 오류가 발생하고 SQL 쿼리에서 열을 변환하고 병합하기 때문에 발생합니다. telerik MVC 그리드에서 필터링/주문 시나리오를 제어 할 수있는 솔루션이 필요합니다. –