2012-04-20 7 views
2

내 페이지 레코드를 저장하는 SQL 데이터베이스가 있습니다. 내 페이지에는 내 DB의 레코드로 채울 세부 정보 뷰가 있습니다. 레코드를 잘 채울 수 있습니다. 드롭 상자의 사용자 선택을 기반으로 레코드를 채울 수 있어야합니까?사용자 입력을 기반으로 데이터 테이블 채우기

내 메인 페이지에는 몇 년 (예 : 2011, 2010, 2009)의 드롭 다운 목록과 계정 코드 (예 : 6 자리 숫자)가 포함 된 드롭 다운 목록이 있습니다. 사용자가 선택한 연도 (예 : 2010)와 계정 코드 (예 : 123456)에 대한 선택 사항에 따라 2010 년 및 2010 년의 레코드만으로 자세히보기 (별도의 페이지에 있음)를 채 웁니다. 계정 코드 123456 ??

멀리까지 작동시키지 못했습니까?

+0

이 작업을 수행 할 수 있지만 처음에는 세부 정보보기를 동일한 페이지로 이동시킬 수 있는지 묻고 싶습니다. 더 쉽게 만들 수 있습니다 (그러나 단지 약간) – David

+0

세부 정보보기는 계정 코드와 동일한 페이지에 있지만 연도는 아닙니다. 나는 여러 페이지를 가지고 있으며 그들에게 1 년을 선택하게하고 그 모든 추가 페이지에 대한 기록을 그 해에 근거하게하고 싶습니다. – developthestars

답변

1

양식 컨트롤의 입력을 기반으로 DetailsView를 채우는 것은 실제로 매우 간단합니다. 기본적으로 컨트롤을 사용하여 select 문에서 WHERE 절에 플러그 인 할 매개 변수 값을 제공합니다.

본질적으로 제어 매개 변수를 가져 오기 위해 SqlDataSource를 정의합니다. http://msdn.microsoft.com/en-us/library/z72eefad.aspx

그리고 여기에 스크린 샷 기사 :

이 문서는 또한 여기의 http://www.asp.net/web-forms/tutorials/data-access/accessing-the-database-directly-from-an-aspnet-page/using-parameterized-queries-with-the-sqldatasource-vb

세부 사항은 다른 페이지에 보면, 당신은 QueryString을 매개 변수를 사용하여 같은 일을 할 수 있지만, 당신을 잎 함부로 열 수 있습니다. (쿼리 문자열에서 값을 변경하여 사람들이 보지 않아야하는 레코드를 얻는 사람들). 특정 상황에서의 조작이 문제가 아닌 경우 - 데이터가 본질적으로 민감하지 않으면 문제가되지 않지만 그것의 '뭔가 알고 있어야합니다.

+0

정말 고마워. – developthestars

+0

@developthestars - IMO를 수행하는 "어려운"방법이기 때문에 동영상 링크를 내 대답에서 삭제했습니다. screenshots가있는 기사는 시작해야 할 곳이며, msdn 문서를 읽습니다. – David

+0

+1 : 우수 답변. –

관련 문제