프로그래밍/ASP.NET 50

ASP.NET 콘트롤 Vol.9 - 유효성검사 > RangeValidator

RangeValidator는 범위를 지정하여 값을 입력 받을 때 유용합니다. 주의할 점은 공백일 경우 해당 콘트롤이 작동하지 않고 넘어가므로, RequireFieldValidator를 사용하길 권장합니다. 본문에 아래처럼 텍스트박스 두개와 버튼하나 그리고 RangeValidator를 각각의 텍스트박스에 배치합니다. 각각의 속성을 지정합니다. 범위에서 벗어나는 값을 입력시 오른쪽 콘트롤에 에러메시지가 출력됩니다. 대소문자도 구별하네요. 정상적으로 입력시 포스트백이 일어납니다.

ASP.NET 콘트롤 Vol.7 - 표준 > FileUpload

ASP.NET 은 기존의 ASP 에서 덱스트업로더나 기타 업로드 컴포넌트를 별도로 설치해야 했던 번거로움을 덜어주어 자체적으로 업로드가 지원됩니다. 물론, 어느정도의 대용량 파일도 업로드가 가능하지만, 서버에 무리를 주는 경우가 많으니 2MB 이상의 업로드가 자주 필요하다면 상용컴포넌트의 사용을 권장합니다. 파일업로드 콘트롤을 본문에 배치합니다. 바로 아래에 버튼콘트롤을 추가합니다. 프로젝트의 루트경로에 Files 라는 업로드전용 폴더를 생성합니다. 파일업로드 버튼 클릭시 발생하는 이벤트를 작성합니다. Server.MapPath(".") 현재 프로젝트의 루트경로를 의미합니다. 업로드 전용폴더 Files 의 앞뒤로 \가 두개씩 설정되어 있음을 유의하시기 바랍니다. 테스트를 위해 페이지를 실행하고 필자의 캐..

ASP.NET 콘트롤 Vol.5 - 표준 > Panel

Panel은 실무에서 은근히 많이 사용되는 콘트롤 입니다. 특정영역만 스크롤(div style="overflow-y:scroll;")이 되게 하거나 그룹박스(HTML의 fieldset > legend) 기능을 활용하는데 주로 사용합니다. Panel 속성 중에 DefaultButton 에 특정 버튼을 지정하고 엔트 누르면 해당버튼 클릭을 한 것과 같은 효과가 있습니다. Panel 안에 텍스트박스와 버튼을 하나씩 배치합니다. 디자인모드로 와서 패널을 선택 후 F4를 누릅니다. 속성창에서 DefaultButton을 Button1 으로 지정합니다. 페이지를 실행 후 텍스트박스에 마우스커서를 갖다놓고 키보드 엔터를 누릅니다. 마우스로 버튼을 누른 것과 같은 효과의 포스트백이 일어납니다. 버튼을 클릭 했을 때 스크..

ASP.NET 콘트롤 Vol.4 - 표준 > MultiView, View

로그인/로그아웃 시에 유용한 MultiView 콘트롤에 대해 알아보겠습니다. MultiView는 ASP.NET 2.0 부터 제공되는 기능으로 Panel 콘트롤과 흡사한 기능을 제공합니다. 로그인/로그아웃 같은 간단한 작업은 MultiView 콘트롤을, 좀 더 다채로운 기능들이 요구되는 경우는 Panel을 권장합니다. Literal 콘트롤과 Label 콘트롤 정도의 관계라고 생각하면 편할 것 같습니다. MultiView 콘트롤을 본문에 하나 배치합니다. MultiView 콘트롤 안에 View 콘트롤을 하나씩 배치합니다. View 콘트롤 안에 각각 '로그인', '로그아웃' 버튼을 하나씩 배치합니다. 여기까지 하고 페이지를 실행 해보면 아무것도 뜨지 않습니다. 페이지를 출력 하기위해 코드를 몇줄 추가합니다. ..

ASP.NET 콘트롤 Vol.3 - 표준 > PlaceHolder

PlaceHolder 콘트롤은 또다른 콘트를을 제어하기에 좋습니다. 도구상자에서 PlaceHolder 콘트롤을 하나 배치합니다. 바로 아래에 버튼을 하나 배치합니다. 버튼을 더블클릭 했을 때의 코드를 작성합니다. 브라우저로 출력해 보면 '임의의 버튼' 이라는 버튼이 보이지 않습니다. 하단의 버튼을 클릭하면 '임의의 버튼'이 보여집니다.

ASP.NET 콘트롤 Vol.1 - 표준 > ListBox

ListBox 콘트롤은 DropDownList 콘트롤을 펼쳐놓은 것과 흡사하며 관리자단 에서 관리자권한 설정 등에 활용하면 좋습니다. 차이점이 있다면 SelectionMode 에서 Multiple로 선택시 동시에 여러개의 항목선택이 가능하다는 것입니다. 도구상자에서 ListBox 콘트롤을 하나 배치합니다. Page_Load() 부분에 동적으로 아이템을 추가합니다. 브라우저로 실행하면 국어, 영어가 정상적으로 출력됩니다. Html 소스를 보면 value값과 화면에 출력되는 Text값이 같다는 걸 알 수 있습니다. value와 text를 다르게 입력하는 방법은 ListItem 을 사용하면 됩니다. 브라우저로 출력하면 정상적으로 출력됩니다. Html 소스를 보면 좀전의 동일한 value, text 값과 다르게..

Enterprise Library 사용시 SQL의 UNIQUEIDENTIFIER 타입 파라미터로 지정

Enterprise Library(이하 EL)을 사용하여 일일이 데이타타입을 지정하지 않고 디비에 접속시 SQL의 uniqueidentifier 타입이 제대로 넘어가지 않는 아래의 오류가 발생할 수 있습니다. 'System.String' 에서 'System.Guid'(으)로의 캐스팅이 잘못되었습니다. 검색엔진을 뒤져봐도 설명이 잘 된 자료를 찾기 힘들어서 삽질좀 하다가 아래와 같은 방법으로 해결하였습니다. 벼락치기식 프로젝트를 진행시 EL을 사용하면 아래처럼 간단한 코딩으로 결과물 출력이 가능합니다.