블로그 이미지
내게 능력 주시는 자 안에서 내가 모든것을 할수 있느니라 - 빌립보서 4 : 13 - happydong

카테고리

Happydong (1363)
프로그래밍 (156)
MUSIC (16)
인물 (3)
Utility (10)
세미나 소식&내용 (22)
IT뉴스 (18)
운동 (830)
CAFE (10)
Life (282)
Total
Today
Yesterday



ASP.NET AJAX 프로젝트 만들기 준비 사항~!


여기서 다루어질 이야기는 제목과 같습니다. 즉 ASP.NET AJAX 컨트롤에 관심은 있는데 어떻게
어디서 부터 시작을 해야 할지 모르는 분들을 위해 간단하게 이야기 하도록 하겠습니다. 역시 개
발의 시작은 프로젝트를 생성에서 부터 겠지요~!^^

  VS2005 준비 사항 ★

 

 ASP.NET Extensions1.0 를 설치를 해야 합니다.

  - 다운로드 주소

 ASP.NET Ajax controlToolkit 참조해야 합니다.

  - 다운로드 주소

 

ASP.NET Extensions1.0.NET Framework 2.0 이상에서 지원이 된다고 합니다. 고로 Visual Studio2005 이상 버전에서 사용할 수 있겠지요~^^
AJAX Extensions1.0
설치한다면
Microsoft AJAX Library를 별도로 설치할 필요가 습니다.

이미 그 모듈도 포함하고 있기 때문이지요. Microsoft AJAX Library를 별도로 설치해야 하는 경우는

머신이 윈도우OS가 아니거나, .NET Framework가 지원되지 않아서 ASP.NET Extensions1.0을 설치

할 수 없는 경우에한 합니다. Microsoft AJAX Library는 비 Windows 환경을 위한 별도로 제공되는 스

크 립트라이브러리이기 때문입니다.

 

ASP.NET Extensions1.0를 다운로드 받아서 설치후 VisualStudio 2005를 실행하면 아래 화면과 같이

ASP.NET AJAX-Enabled Web Site 템플릿 프로젝트가 보일 것 입니다.

(VisualStudio 2005 실행 >> 파일 >> 새로만들기 >> 웹사이트)

 

1.그림

 

사용자 삽입 이미지
 

ASP.NET AJAX-Enabled Web Site를 선택하고 프로젝트명을 설정후 실행하면 이제 부터

ASP.NET AJAX Project 만들준비가 된 것 입니다.

다음은 VS2005AJAX Control Toolkit를 참조 하는 모습을 보도록 하겠습니다.

위 처럼 프로젝트를 실행했다면 솔루션탐색기에서 프로젝트를 선택하고 마우스 오른쪽 버튼을 클릭하

면 아래와 같은 그림의 메뉴들이 나타납니다. 그 중에 참조 추가를 선택 합니다.

 

2. 그림


 

사용자 삽입 이미지

 

이제 AJAX Control Toolkit를 다운로드 받은 경로에서 AjaxControlToolkit.dll파일을 프로젝트에 추가

합니다.

 

3. 그림

사용자 삽입 이미지

 

~~ 이제 참조 추가까지 끝났습니다.. ..이제 AJAXControl들 추가하도록 하겠습니다.

 

4.그림


 

사용자 삽입 이미지

 

탭 추가를 하면 탭 이름을 지정 할 수 있습니다. 원하는 이름을 설정을 합니다. 저는 "AJAX Controls"

라고 했습니다.

 

5. 그림

사용자 삽입 이미지

 

 

위 그림과 같이 dll 파일을 텝에 드래그 하면 아래과 같이 AJAX Control들이 나타나게 됩니다.

 

6. 그림


 

사용자 삽입 이미지

 

자 이렇게 해서 VS2005에서의 ASP.NET AJAX 프로젝트를 완전하게 만들 준비가 된 것 같군요~^^

 

이제는 VS2008 ASP.NET AJAX 프로젝트를 어떻게 실행하는지 알아 보도록 하겠습니다.

 

  VS2008 준비 사항 ★

 

VS2008 VS2005의 상위 버전이므로 ASP.NET Extensions 따로 설치할 필요가 없습니다.

그냥 우리가 Web프로젝트를 실행시키면 기본적인 AJAX 컨트롤이 들어가 있는 것을 보실수

있을 것입니다.

 

7.그림


사용자 삽입 이미지
 

 

AJAX 컨틀롤을 추가하는 것은 위에서 본 내용과 동일한 방법을 통해서 추가 하면된다. 역시나

참조 추가 부분도 마찬가지이다.  AJAXControlToolkit3.5 가 나왔으니깐 다운로드 받아서 추가

하면 될 것이다.( AJAXControl 다운로드) 다운로드 주소는 위에서 링크 걸린 곳과 동일 하다.

이렇게 해서 VS2008 ASP.NET AJAX 프로젝트를 만들 준비가  된 것이다. 이제 부터 컨트롤을

하나씩 써보면서 여러가지로 만들어 보면 되는 것이다~^^;;

 

<Tip>

혹시 VS2008 ASP.NET AJAX Project를 실행하는 도중에 아래와 같은 에러가 나타나면

web.config파일에서 아래 코드를 지워버리세요~!

 

8.그림

사용자 삽입 이미지

 

 

///////////////////////////////////////////////////////////////////////////////////////

<add assembly="System.Data.DataSetExtensions, Version=2.0.0.0, Culture=neutral,

PublicKeyToken=B77A5C561934E089"/>

///////////////////////////////////////////////////////////////////////////////////////

 

 

Posted by happydong
, |



ASP.NET2.0 Page 지시자의 종류

 

 

 

Page 지시자

설명

Async

 페이지가 비동기 처리기인지 결정하는 것으로 기본값은 false이며, 페이지가 비동기 처리를 하게 하려면 이 특성을 true로 설정한 후 AddOnPreRenderCompleteAsync 메소드를 이용해 비동기 처리 메소드를 등록하거나 페이지가 IHttpAsyncHandlEr 인터페이스를 구현해야 한다.

CodeFile

 코드 비하인드 파일의 경로를 지정한다.

MaintainScrollPositionOnPostBack

 페이지가 라운드트립하는 동안에 브라우저의 스크롤 위치를 유지할지를 결정하는 것.(기본값 false) 이 특성은 이전 버전에서 사용하던 SmartNavigation 특성을 대신한다.

MasterPageFile

 마스터 페이지 파일의 경로를 지정한다.

Title

페이지의 제목을 지정한다.

Theme

테마의 이름을 설정한다.

StylesheetTheme

  테마의 이름을 설정하지만 Theme보다 낮은 우선 순위를 가진다.

EnableTheming

 페이지가 테마를 사용할지 여부를 지정하는 것으로 기본값은 true이다. ‘Web.config’파일에서 응용프로그램 전역에 테마를 사용하도록 설정되었을 경우 이 특성을 false로 지정하면 특정 페이지만 테마가 적용되지 않도록 할 수 있다.

CompilationMode

클라이언트의 요청이 올 때 페이지 파일을 컴파일하는 방법을 결정한다.

LinePragmas

라인 프래그머가 컴파일된 어셈블리로 추가될지 여부이다.

 

 

 

 

Posted by happydong
, |



ㅁ 이미지 다운로드 알집이용~?!

 

지난 12 22일 토요일에 있던 Hoons닷넷 세미나 중에 라이브코딩(?!)을 진행 하셨던 서동진님

Demo를 보고....지금 막 한번 해봐야 겠다는 생각이 들어서 테스트 겸 저도 한번 따라해 봤습니다.

그리고 제가 기억력이 좋은게 아니라서 이렇게 몇자 적어 두어서 기억을 되세기려고 합니다.^^;;

 

저는 다운로드를 알집으로 한번도 테스트를 해본적이 없어서...근데...그날 서동진님의 세션을 듣고

이미지를 하나하나 내려주는 것보다는 알집을 이용해서 내려보내는 게 아주 효과적이라는 사실을

알았습니다. , 이미지를 하나하나 서버에 연결을 해서 다운로드 하는 것보다 한번에 파일을 내려보

내는 것이 효과적 이겠고, 용량을 압축해서 내려 보내기때문에 하나하나 내려보내서 다 받는 시간보다

한번에 압축해서 받는 시간이 반이상이나 차이가 겠지요~^^(차이가 나더라고요~!)

그 전에는 그렇게 생각해 본적이 없었던 저 한테는 새로운 발견이었습니다~^^;;;

 

그럼 한번 코드를 살짝 보도록 하겠습니다.

저는 아래와 같이 Silverlight 프로젝트와 Web 프로젝트를 하나씩 만들었습니다.

 

1.그림

 

사용자 삽입 이미지

 

위 그림은 솔루션 탐색기로 제가 만든 Silverlight 프로젝트와 Web프로젝트의 생성 모습입니다.

그리고 images.zip 라는 알집 파일이 있는 것을 볼 수 있습니다. 이 파일은 Web프로젝트에 생성이

되어 있어야 합니다. 그래야 Silverlight로 다운로드 할 수 있기 때문입니다.

 

images.zip 파일에는 아래와 같은 image파일들이 들어 있습니다.

 

2.그림

 

사용자 삽입 이미지

 

 

그럼 코드를 보도록 하겠습니다. 아주 간단합니다. Downloader클래스를 사용했보셨다면 금방 이해

하실 겁니다. 실은 모 별거 없습니다.ㅋㅋ 이 내용은 그냥 제가 기억하기 위해서 포스팅하는 것이니

혹시 읽다가 아시는 내용이면 안보셔도 괜찮습니다~^^;;;;;

 

///////////////////////////////////////////////////////////////////////////////////////////

using System.Windows.Browser;

 

namespace ImageZipTest01

{

    public partial class Page : Canvas

    {

        private Image img;

        //위치 지정을 위한 변수

        private int _left = 20;

        public void Page_Loaded(object o, EventArgs e)

        {

            // Required to initialize variables

            InitializeComponent();

 

            Downloader DL = new Downloader();

            DL.Completed += new EventHandler(DL_Completed);

            DL.Open("GET", new Uri(HtmlPage.DocumentUri, "images.zip"));

            DL.Send();

        }

 

        void DL_Completed(object sender, EventArgs e)

        {

            var URL = sender as Downloader;

            for (int i = 0; i < 2; i++)

            {

                img = new Image();

                img.SetSource(URL, string.Format("img0{0}.jpg",i));

                img.Width = 320;

                img.Height = 400;

                img.SetValue<int>(LeftProperty, _left);

                this.Children.Add(img);

                _left += 340;

            }

        }

    }

}

///////////////////////////////////////////////////////////////////////////////////////////

 

위 코드는 보시듯 아주 간단 합니다.^^;; Silverlight 프로젝트의 Page.xaml 비하인드 코드에 작성한

코드이고요~ 그래도 이 간단한 소스를 설명하자면...변수로 Image클래스를 선언하고 이미지의 위치

위치를 변경하기 위해 int형 변수를 선언했습니다. Page_Loaded이벤트 부분에는 Downloader 클래

스를 생성하고, 이벤트...(다운로드가 끝나고 일어나는 이벤트)Completed 를 선언했습니다. 그리고

Open 메소드를 통해서 전송방식과 다운로드의 대상 경로를 지정했습니다. 그 다음 Send 메소드를

통해서 다운로드 실행한 것이지요~

이벤트 부분의 코드는 다운로드가 완료 되면 반복문을이용해서 image 객체를 생성하는 것입니다.

이벤트의 인자같으로 받는 sender는 다운로드클래스 이기 때문에 sender를 이용해서 Downloader

클래스를 생성하고 Image객체의 SetSource 지정합니다.  SetSource의 첫번째 인자값은 다운로드

클래스이고, 두번째는 파일 이름이 되겠네요~^^

 

자 이렇게 하면 어떻게 프로젝트가 실행이 될지 예상이 되겠지요~^^

아래는 프로젝트를 빌드하고 실행한 모습입니다.

 

3.그림

 

사용자 삽입 이미지

 

오호 이렇게 잘나오네요~^^

이미지를 하나하나하나 다운로드해도  이렇게 똑같이 나타날 것입니다.

프로젝트의 성향에 따라 한꺼번에 받을 것인지 아니면 하나하나하나 받아야 하는지를...잘 생각해보고

사용하면 유용할 것 같습니다~

 

이제 크리스마스 이브군요~^^;;;;

메리 크리스마스.....2007 12 24.....^^;;

 

Posted by happydong
, |