2012-04-10 2 views
0

# of Students과 같은 열을 가진 DataTable이 있으며 내림차순으로 정렬하고 싶습니다. 내 코드는 다음과 같습니다.DataTable.Select()를 사용하여 특수 문자가있는 열에 액세스하는 방법?

... 
dt.Columns.Add(new DataColumn("# of Students", typeof(string))); 

// do some stuff... add records etc. 

// A runtime error occurs here: "Cannot find column '# of Students'" 
var rows = dt.Select("","'# of Students' desc"); 

// this is just fine. 
rows = dt.Select("","# of Students"); 

이름에 특수 문자가있는 경우 어떻게이 열에 액세스 할 수 있습니까?

답변

2

이 같이 대괄호 ([])를 사용한다 :

var rows = dt.Select("","[# of Students] desc"); 
+0

남자 나는 가짜입니다! 그게 내게 더 분명했을거야. 감사! – DJTripleThreat

3

당신은 모두 [] 또는``구문을 사용할 수 있습니다. 다음 스 니펫은 모두 정확합니다.

var rows = dt.Select("","`# of Students` desc"); 

var rows = dt.Select("","[# of Students] desc"); 
+0

백틱이 나를 위해 작동하지 않았다. .NET 4.0의 새로운 기능일까요? 3.5에서 실행 중입니다. – DJTripleThreat

+0

예, 4.0 가지입니다. 다음은 msdn 읽기 - 구문 설명을 비교하기위한 http://msdn.microsoft.com/ru-ru/library/system.data.datacolumn.expression(v=vs.100).aspx 스위치 프레임 워크 버전입니다. – ILya

+0

좋아, 내가 +1 할게 :) 고마워! – DJTripleThreat