2013-06-20 4 views
1

다음과 같은 문제가 있습니다. 사용자가 GUI를 사용하여 개체에서 일부 필드를 선택할 수있는 C# 프로젝트의 EntityFramework v5.0 코드 첫 번째 방법을 사용하고 있습니다. 이름, 전화 번호, 도시 속성, 사용자가 선택할 수 있습니다. SqlQuery 메서드 (http://msdn.microsoft.com/en-us/library/gg679117(v=vs.103).aspx)를 사용하여 런타임에 SQL 쿼리를 만들려고하므로 런타임에 필수 유형을 생성해야합니다. SELECT Name,City FROM Customers과 같은 간단한 쿼리에 대해 Reflection.Emit을 사용하여 관리했습니다 (이름 및 도시 문자열 속성으로 유형 생성). 이리). 하지만 어떻게 집계 함수의 속성을 만들 수 있습니까? 예를EntityFramework 집계 열 이름

SELECT Customers.Name, COUNT(Customers.City) 
FROM Customers 
GROUP BY Customers.Name 

를 들어 내가 다른 사람의 'Count_Customer_City'라는 이름의 재산과 수십를 만드는 시도하지만 난 항상에서 결과에 0을 얻을, 그래서 내가 제대로에 이름을 필요로하지 않으며이 실제 값으로 채워집니다 것 같습니다,

+0

왜 대신 사용하는 LINQ 방법을 사용하지 않는 열 이름을 설정할 수 context.Database.Connection.CreateCommand().CreateReader() 방법을 사용하여 해결하지만 나는 올바른 이름을 알아낼 수 없습니다 (또는 어쩌면 훨씬 더 일반적인 방법이있다)' SqlQuery'? –

+3

당신은 이것을함으로써 EF의 목적을 무 찌르십시오. Linq를 사용하고 프로젝트를 질의 한 후 필요한 유형으로 프로젝트를 선택하거나 비즈니스 도메인 객체를 빌드하여 출력을 지원하십시오. – Jay

+0

UI에서 많은 데이터 _once_ 및 숨기기/표시에 조금 문제가있는 것은 무엇입니까? 결국 사용자가 하나 이상의 열만보고 싶어 할 때 모든 데이터를 다시 가져와야하기 때문에 훨씬 더 반응적일 수 있습니다. 그것은 좋아 보이지만 지나치게 설계되었습니다. 명확한 유스 케이스와 상호 작용 설계의 부족에 대한 증언 일 수도 있습니다. –

답변

0

내가 명시 적으로