DataTable 다 열 합병 문제 쉽게 해결
이러한 고정된 형식 은 선택 문 제 를 대표 하 는 데이터 구 조 를 나타 내 지만 선택 문제 라 이브 러 리 구조 와 논술 문제 라 이브 러 리 구조 가 다 르 기 때문에 논술 문 제 를 대표 하 는 데이터 구 조 를 직접 표시 할 수 없다.이 때 어떻게 고정된 GridView 에 다른 데 이 터 를 표시 합 니까?사실 자세히 살 펴 보면 그들의 유일한 차 이 는'답'이라는 열의 데이터 가 다르다 는 것 을 알 수 있다.선택 문제 유형 에서 이 필드 의 값 은 하나의 옵션 에 불과 하지만 논술 문제 등 유형 에 대해 그 문 제 는 6 개 이 고 대응 하 는 답 도 6 열 이 있어 야 한다.여기 서 최종 적 으로 해결 해 야 할 문 제 는 어떻게 6 열의 답 을 1 열 에 표시 하 는 지 정리 할 수 있다.해결 방법:여섯 필드 의 내용 을 sql 문장 으로 통합 하여 새로운 필드 로 표시 합 니 다.구체 적 인 실현 은 코드 를 보십시오
#region , QuestionId,ChapterId,QuestionTypeId,Point,
/// <summary>
/// , QuestionId,ChapterId,QuestionTypeId,Point,
/// Degree,Fraction,QuestioinContent,IsValid ,
/// </summary>
/// <param name="strDataTableName"></param>
/// <returns></returns>
public DataTable BindQuestion(string strTableName,string strChapterName,string strQuestionTypeName)
{
try
{
DataTable dt = new DataTable ();
if (strQuestionTypeName != " " && strQuestionTypeName != " ")
{
strsql = "select * from " + strTableName + " where ChapterId=@chapterid and QuestionTypeId=@questiontypeid";
}
else
{
strsql = "select QuestionId,ChapterId,QuestionTypeId,Point,Degree,Fraction,QuestionContent,cast(Answer1 as nvarchar(4000)) + cast(Answer2 as nvarchar(4000)) + cast(Answer3 as nvarchar(4000)) + cast(Answer4 as nvarchar(4000)) + cast(Answer5 as nvarchar(4000)) + cast(Answer6 as nvarchar(4000)) AS CorrectAnswer,IsValid from " + strTableName + " where ChapterId=@chapterid and QuestionTypeId=@questiontypeid";
}
//strsql = "select * from " + strTableName + " where ChapterId=@chapterid and QuestionTypeId=@questiontypeid";
SqlParameter[] paras = new SqlParameter[]{
new SqlParameter("@chapterid",strChapterName),
new SqlParameter("@questiontypeid",strQuestionTypeName)
};
dt = sqlHelper.ExecuteQuery(strsql,paras,CommandType.Text);
return dt;
}
catch
{
throw new Exception(" QuestionId,ChapterId,QuestionTypeId,Point ( )");
}
finally
{
sqlHelper.Close();
}
}
#endregion
그 중에서 캐 스 트 함 수 를 사용 하 는 strSql 문장 이 하 는 역할 은 여러 필드 를 하나의 새로운 필드 로 통합 하 는 것 입 니 다.또한 주의해 야 할 것 은 strSql 문장의'+'번호 입 니 다.합 쳐 야 할 필드 의 내용 이 Text 형식 이 라면 이 기 호 를 지원 하지 않 습 니 다.이 때 nvarchar 형식 으로 변환 해 야 합 니 다.이 다 열 합병 문 제 는 완벽 하 게 해결 되 었 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Datatable의 Laravel 사용자 정의 내보내기 버튼이 기사에서는 데이터 테이블에서 laravel 사용자 정의 내보내기 버튼을 볼 수 있습니다. Datatable은 내장 버튼 기능을 제공하며 html5 버튼도 제공합니다. 따라서 요구 사항에 따라 테이블에 데이터 테이...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.