2011-01-04 6 views
1

나는이 질문이 조금 이상하게 보일지 모르지만, 여기에 세부 사항이 있습니다.리피터 대 문자열 빌더

목표 : 여러 가지 이유로 (텍스트, 값) 쌍을 검색 할 수 있습니다. 그 중 하나는 알파벳을 검색하고, 각 문자는 앵커 또는 LinkButton으로 사용되며 텍스트 값은 문자가되고 click 이벤트는 쌍의 값 부분을 가져 와서 stringFormat()에 배치합니다. "매개 변수화 된 URL"구성하기

이 목표를 위해 두 가지 방법을 사용했지만 어떤 것이 더 좋은지 잘 모릅니다! 그것으로하는 LinkButton이있을 것이다 리피터

리피터를 사용

1 ItemTemplate을이 블록을 통해의와 '텍스트'와 평가 사용하고 '가치'생성하는 텍스트를 설정합니다 QueryString. 검색 될 총 쌍에 해당하는 카운터와 루프를 사용하여 StringBuilder 의 인스턴스를 생성

의 StringBuilder 사용

2. 이

Links_strngBuilder.Append(string.Format("<a href='/data.aspx?page={0}'>{0}</a>", chrctr)) 

같은 몇 가지 코드를 사용하여 탐색을 위해 필요한 모든 앵커 긴 문자열을 구축하고 마지막으로 문자열로 문자열 빌더 인스턴스를 변환하고 레이블에 할당하는 특정 문자열 형식을 추가

참고 : [데이터베이스의 각 루프에서] 또는 [배열/arrayList/List <]에서로드하여 값을 저장하고 모든 연결을 db에 저장하도록 chrctr 텍스트 및 값 필드가 검색됩니다.

답변

1

내가 작동하는 곳에서는 str을 사용하지 않을 것입니다. 설계자가 잉잉 빌드. 그가 간단한 변경을해야한다면 디자이너가 코드 숨김에서 원하지 않습니다. 따라서 마크 업을보기에 유지하고 코드 숨김의 코드 숨김을 유지하십시오. 중계기의

편집

다른 장점은주기의 변화가 훨씬 용이하다. UI를 미세 조정하거나 재배포 할 필요가 없습니다. ASPX 템플릿을 편집하고 저장하고 새로 고침하십시오.

+0

+1 네가 맞아요. StringBuilder는 작업을 복잡하게 만듭니다. 하지만 성능이나 확장 성과 같은 완벽한 비교 또는 적어도 가장 중요한 점을 찾고있었습니다. – lKashef

1

나는이 두 가지 방법은 (메모리 사용량과 속도면에서)을 수행하는 방법에 대해 아는 서로 비교 때문이 아니라 확실히 리피터 가고 싶어하지 않습니다

  • 코드는 훨씬 더 쉽게 이해하기 & 지원
  • StringBuilder를 사용하면 Response.Write가 널리 사용되었을 때의 고전적인 ASP의 시대를 생각 나게합니다.
  • 비주얼 디자이너의 이점을 StringBuilder와 함께 사용할 수 없습니다.

- 파벨

+0

Kim과 꽤 똑같은 대답이지만 자세한 것은 고마워요! +1. 여전히 각 접근법에 대한 PROS 및 CONS에 대한 자세한 정보를 원합니다. – lKashef

0

나는 출력을 구축하는 것이 더 클라이언트 측 (예를 들어,에 맞는 생각합니다.당신이 아약스 전화를하고 html로 결과를 보여주기를 원할 때) 서버 측보다 사용자 정의 서버 컨트롤을 빌드 할 때를 제외하고.

또한 리피터를 사용하는 경우 요구 사항이 변경 될 때마다 확장 성 옵션이 있으며 더 많은 제어 및 기능 (예 : 이벤트 처리 및 CSS 등)이 있습니다.