2016-06-16 6 views
0

현재 파일 업로드 컨트롤, 격자보기, "이미지 이름"텍스트 상자 및 "업로드"단추가있는 C# asp.net 웹 사이트에서 작업하고 있습니다. 이 웹 페이지의 기능은 파일 업로드를 사용하여 SQL 데이터베이스로 전송되는 이미지를 업로드하는 것입니다. 그리드보기는 데이터베이스에서 이미지 ID, 이미지 이름 및 이미지를 표시합니다. 프로젝트의 해당 부분을 성공적으로 완료했습니다. 그러나 지금 내 문제는 사용자가 데이터베이스에 저장된 모든 이미지가 아니라 선택한 이미지 만 볼 수있게하려는 것입니다. 데이터베이스의 최신 항목을 그리드보기에 표시하고 싶습니다. ! 나는 이것을 어떻게 할 수 있을까? 고맙습니다!Gridview에 이미지 표시

답변

2

SQL 서버에 업로드하는 이미지를 유지하므로 두 번째 데이터 왕복이 필요하지 않습니다. 그러나 데이터베이스를 가져 오려면 필드를 채우는 데 사용하는 쿼리를 수정해야하며 결과를 원하는 정확한 이미지로 제한하려면 WHERE 또는 JOIN 절을 추가해야합니다. 또한 마지막 이미지를 삽입하지 않도록주의해야합니다. 왜냐하면 2 명의 사용자가 동시에 이미지를 제출한다면 어떻게 될까요? 나는 당신이 특정 사용자를위한 이미지에 대한 쿼리를 작성하고 최신을 선택하도록 할 것이다. 당신이 당신의 질의를 게시한다면 사람들은 당신이 그것을 알아 내는데 거의 도움이 될 것입니다.

1

이 작업을 수행하는 가장 좋은 방법은 데이터베이스 자체에서 직접 행을 필터링하는 것입니다. 이를 수행하기 위해 이미지를 업로드 한 사용자의 이름도 저장해야합니다.

데이터를 추출하려면 사용자 이름을 허용하고 사용자 이름별로 필터링 된 데이터를 쿼리 한 다음 출력을 다시 응용 프로그램에 제공하는 저장 프로 시저를 만드는 것이 안전합니다. 또한 응용 프로그램에서 직접 매개 변수화 된 쿼리를 사용하여 수행 할 수도 있습니다.

0
SELECT TOP 1 column_name FROM table_name 
+0

왜이 질문에 대한 답변인지 자세한 내용을 추가하십시오. 코드 만 추가하는 것만으로는 충분하지 않습니다. 또한 코드는 위에서 설명한 시나리오에서 작동하지 않는 것처럼 보입니다. – Spidey

관련 문제