2012-01-11 1 views
0

나는 asp.net 초보자이며 일반적으로 마스터 - 세부 정보보기 웹 사이트 디자인에 대해 생각하고 있습니다. 아래의 모든 레코드 및 세부 정보보기를 표시하는 GridView-Control이 있으며 기존 레코드를 편집하고 새 레코드를 추가하고 세부 레코드를 표시합니다.asp.net보기 패턴 처리/편집/삽입

이러한 상황을 처리 할 수있는 asp.net에는 몇 가지 컨트롤이 있습니다. GridView를 DetailsView 또는 FormView와 함께 사용합니다. 그러나 이러한 모든 접근 방식은 신속한 응용 프로그램 개발을 위해 설계된 것처럼 보입니다. 내 자신의 DAL 등을 사용하고 싶습니다. 그래서 예를 들어 Insert/Update 문을 완전히 제어 할 필요가 있습니다.

이 문제를 해결하기위한 일반적인 asp.net 접근 방식은 무엇입니까? 상태 (보기/편집/... 모드)를 자체적으로 저장하는 상세보기 용 UserControl을 생성해야합니까? 또한보기는 상태에 따라 약간 다릅니다 (예를 들어 삽입보기에는 편집보기보다 하나 이상의 입력 제어가 있습니다). 그것은 언급 한 DetailsView 및 FormView이 중 하나를 처리 할 수없는 것 그래서 복사 많은 코드 & 붙여 넣기처럼 보인다.

나는 꽤 일반적인 상황이라고 생각합니다. 그 상황에서 당신은 무엇을 선호합니까?

+0

[Dynamic Data Website] (http://msdn.microsoft.com/en-us/library/cc488469.aspx)를 사용해 보셨습니까? –

답변

0

당신과 같이 직접은 DetailsView 또는 FormView에 사용자 정의 DAL에서 데이터를 수동으로 바인딩 할 수 있습니다 : 방법 때를 호출 전선 당신의 DAL 객체까지와 ObjectDataSource를을,

this.dvw.DataSource = new[] { DAL.GetObject(1) }; 
this.dvw.DataBind(); 

을 또는 당신은 또한 사용할 수 있습니다 그것을 필요로합니다.

또한 사용자 지정 사용자 정의 컨트롤을 사용하고 데이터를 수동으로로드 할 수도 있습니다. 이는 내 응용 프로그램에서도 취한 접근법입니다.

실제로 아키텍처, 구현하려는 대상, 개체 모델의 복잡성 및 기타 다양한 요소에 따라 달라집니다.

0

마스터 파트의 경우 손으로 인터페이스를 작성합니다. 즉, 텍스트 상자, 레이블 등을 만듭니다. 세부 정보 부분에 대해 편집 가능한 GridView를 사용합니다. 이것은 지루한 작업입니다.

물론 데이터베이스 모델에서 일부 스 캐 폴딩을 사용하여 UI 용 ASP.Net 코드를 생성 할 수 있습니다. 이것을 확인할 수 있습니다 : http://codepaste.net/b1geac