2012-03-12 3 views
1

다음을 수행하는 가장 좋은 방법에 대한 조언을 찾고 있습니다.ASP.NET, 내 webform에서 작업을 수행하는 가장 좋은 방법은 무엇입니까?

보고서, 활동, 메모가 3 개 있습니다.

활동 및 메모는 보고서 테이블과 관련됩니다. (각 보고서마다 많은 활동과 메모가 있습니다.)

사용자가 새 보고서를 만든 다음 보고서에 많은 활동과 메모를 만들 수있는 웹 양식을 만들어야합니다. 모든 데이터는 데이터베이스의 해당 테이블에 기록되어야합니다.

여기 논리에 문제가 있습니다. 나는 같은 페이지에서 여러 formview 컨트롤을 사용하여 프로그래밍 방식으로 테이블을 업데이트하는 등 기타 등등이 비교적 쉬운 작업을 수행하는 좋은 방법을 찾을 수 없습니다. 저기에 어떤 조언 있니?

+0

코드 스 니펫을 제공하고 시도한 방법을 설명 할 수 있습니까? 여러 FormView 파트를 가져 오지 못합니까? – IrishChieftain

+0

그래,이 질문에 좀 더 생각이 필요하다고 생각해. 당신이 여기에서 묻고있는 것을 정확하게 결정하는 것은 어렵습니다. –

+0

나는 지금 처분 할 수있는 코드가 없다. 당신이 처음부터 이것을 만들었다면, 당신은 어떻게 webform을 디자인하겠습니까? – sevenyearsrust

답변

0

내가 이것을 디자인한다면 두 개의 별도 페이지를 사용할 것입니다. 첫 번째 페이지는 모든 보고서 그리드가있는 개요 페이지입니다. 표에는 몇 가지 간단한 기본 정보 (reportid, 이름, 날짜, 메모/활동 수 등)가 표시됩니다. 이 페이지에는 그리드를 필터링하는 검색 옵션이 있습니다. "details.aspx? id = XXX"페이지로 리디렉션 할 레코드의 링크를 연결합니다. 또한 세부 정보 페이지로 리디렉션되는 새로운 보고서 단추를 만들지 만 쿼리 문자열 매개 변수는 사용하지 않습니다.

세부 정보 페이지에는 3 개의 탭이 있습니다. 탭 1은 "보고서 정보"입니다. 탭 2는 "활동"입니다. 탭 3은 "메모"입니다.

세부 정보 페이지는 보고서 삽입 및 업데이트를 모두 처리합니다. "ID"쿼리 문자열이 없으면 사용자가 새 보고서를 삽입하려고하므로이 경우 탭 2와 3을 숨 깁니다. 데이터 바인딩 기능도 수행하지 않습니다. 탭 1 (보고서)을 저장하면 삽입 메소드가 실행됩니다. 보고서를 성공적으로 삽입 한 후에 세부 사항을 활동/메모를 계속 추가 할 수있는 details.aspx? id = NEWID로 리다이렉트하십시오.

"id"쿼리 문자열이 있으면 편집/업데이트 모드입니다. 이 경우 3 개의 탭이 모두 표시됩니다. 탭 1 (리포트)에 저장하면 리포트 테이블에 대한 업데이트가 수행됩니다.

데이터가 가장 잘 표시되지만 활동 및 메모 탭이 배치되어야합니다. 데이터가 단일 문자열 일 경우 리피터 또는 데이터리스트를 사용하여 목록/형식으로 기존 노트/활동을 표시하는 새 액티비티를 삽입하는 양식을 표시합니다.

희망이 있으면 올바른 방향으로 향하게됩니다.

행운을 빌어 요!

+0

리켓, 정확히 내가 찾던 지침! 감사! – sevenyearsrust

+0

쿼리 문자열 (details.aspx? id = NEWID)에 문제가 있습니다. 보고서를 만든 후 "ReportID"를 쿼리 문자열로 전달해야합니다. 맞습니까? ReportID는 테이블의 기본 키이며 ID/자동 증가로 설정됩니다. 레코드가 테이블에 삽입 될 때이 값을 트랩해야한다고 가정합니다. 어떻게? – sevenyearsrust

+0

데이터 작업 방법에 따라 다릅니다. ADO.NET을 사용하여 작업하는 경우 한 가지 방법 만 수행합니다. LINQ에서 작업하는 경우 다른 방법을 사용합니다. 여기에 "삽입 된 레코드의 ID 가져 오기"에 대한 검색을 수행하면 많은 예제가 있습니다. – Ricketts

0

들으셨습니까? MultiViews


장점

  1. 당신은 같은 페이지에 세 가지 요청을 유지할 수 있습니다.
  2. 왕복 횟수가 줄어 듭니다. 따라서 Server.Transfer을 사용하십시오.
  3. 쿼리 문자열 두통을 제거합니다.라우팅을 필요로 여러 페이지를 사용
  4. /다시 쓰기 기능

단점

  1. 이 복잡하게 될 것이다.
  2. 유지 관리 비용이 높습니다. 당신이 당신의 요구 사항이 명확하고 작은 경우

이 사용되어야한다.

관련 문제