RedPlus 개인 블로그

시삽: 레드플러스 님 
게시판 이동:
 제목 : Silverlight4에서 WCF Service 연동하는 간단 샘플
글번호: 186
작성자: Administrator ( 레드플러스 / redplus@live.com )
작성일: 2010/08/11 오후 12:38:00 (2010/08/11 오후 12:38:00 수정)
조회수: 4097

소개

이번 실습에서는 Silverlihgt 4에서 Silverlihgt 사용 WCF Service(이하 WCF)를 사용하는 예제를 보여준다.

 

따라하기

 

(1) Visual Studio 2010을 열고 [새 프로젝트]-[Silverlight 응용 프로그램]을 선택 후, 프로젝트 이름으로 RiaWcfService를 입력한다.

Silverlight4_01

 

(2) WCF 서비스를 사용하기 위해서 반드시  Silverlight 응용 프로그램을 호스트할 웹 사이트로 ASP.NET 웹 프로젝트를 생성한다. 필자는 아래 그림처럼, 기본값인 RiaWcfService.Web으로 이름을 정했다.

Silverlight4_02

 

(3) Silverlight 응용 프로그램이 생성되면, 아래 그림처럼, 간단하게 두 수를 더했을 때 두 수의 결과값을 구해주는 계산을 하는 폼을 구성한다.

Silverlight4_03

 

(4) MainPage.xaml.cs 파일에 아래와 같이 btnOK 버튼에 대한 클릭이벤트를 설정한 후, 샘플로 더하기 연산에 대한 로직을 구성해 본다. 이 더하기 연산을 WCF로 변경해 볼 예정이다.

Silverlight4_04

 

(5) F5번을 눌러, 프로젝트를 빌드한 후 테스트 페이지에서 원하는 값을 입력 후 정상적으로 프로그램이 실행되는지 확인한다.

Silverlight4_05

 

(6) 이번에는 WCF를 사용하기 위해서 RiaWcfService.Web 사이트에 마우스 오른쪽 버튼을 눌러 [추가]-[새 항목] 메뉴를 클릭한다.

Silverlight4_06

 

(7) 새 항목 추가 화면에서 Silverlight 카테고리에 있는 [Silverlight 사용 WCF 서비스] 항목을 선택 후 이름을 PlusService.svc로 입력한다.

Silverlight4_07

 

(8) PlusService.svc.cs 파일에 아래 그림처럼, 앞서 로직을 WCF 문법에 맞게 재 작성한다. GetPlus 메서드 앞에 [[OperationContract] 특성을 반드시 붙여야 한다.

Silverlight4_08

 

(9) ASP.NET 프로젝트인 RiaWcfService.Web 프로젝트에 만들어놓은 WCF 서비스를 Silverlight 프로젝트인 RiaWcfService에서 사용하려면, 아래 그림처럼, RiaWcfService 프로젝트에 마우스 오른쪽 버튼을 클릭한 후, [서비스 참조 추가] 메뉴를 클릭하여, WCF 서비스에 참조를 추가하여야 한다.

Silverlight4_09

 

(10) 서비스 참조 추가 화면에서 오른쪽 상단에 있는 [검색] 버튼을 클릭하면, 같은 솔루션 내의 WCF 서비스가 서비스 항목에 추가된다. 현재는 하나의 WCF 서비스가 있기에 PlusService.svc 항목만 선택이 된다. 서비스를 선택하면, 자동으로 주소란에 서비스에 대한 주소가 입력된다. 네임스페이스 입력 텍스트박스에 PlusServiceReference 이름을 입력한 후 [확인] 버튼을 클릭한다.

Silverlight4_10

 

(11) 서비스 참조추가가 끝나면 아래 그림처럼, ASP.NET의 PlusService.svc 서비스가 Silverlight의 PlusServiceReference로 참조가 됨을 알 수 있다.

Silverlight4_11

 

(12) Silverlight 프로젝트의 MainPage.xaml.cs 파일로 돌아와서 앞서 테스트한 더하기 로직 코드는 주석 처리한 후, WCF 서비스에 대한 인스턴스를 생성한 후 매개변수로 2개의 숫자값을 넘겨준 후 결과값을 다시 텍스트박스에 입력하는 로직을 처리한다.

전체 코드는 아래 그림과 같다.

Silverlight4_12

 

(13) 다시 F5번을 눌러 테스트를 하면, 정상적으로 처리됨을 알 수 있는데, 이번 로직에 대한 처리는 WCF서비스에서 더하기 연산을 한 후 그 결과값이 전송됨을 기억하면 된다.

Silverlight4_13

 

마무리

 

위와 같은 순서로 간단하게 Silverlight 4에서 ASP.NET의 WCF 서비스를 사용하는 예제를 살펴보았다. 만약, Silverlight에서 DB 연동 코드가 필요하다면, ASP.NET의 WCF를 사용하여 데이터 입출력 로직을 구성한 후 이름 Silverlight 프로젝트에서 사용할 수 있는 내용이 이와 동일한 순서대로 구성하면 됨을 알 수 있다.

아무쪼록, 이번 아티클이 Silverlight 4에서 WCF 서비스를 사용하는 방법에 대한 기초자료로서 도움이 되었으면 한다. 좀더 많은 정보를 얻으려면, 검색엔진에서 “Silverlihgt 4 WCF Service”와 같은 키워드로 검색을 해 보길 바란다.

강좌에 사용한 소스 다운로드 : RiaWcfService.zip

끝.

 
이전 글   다음 글 삭제 수정 답변 글쓰기 리스트


관련 아티클 리스트
  제       목 파일 작성자 작성일 조회
이전글 Windows Phone 7 + WCF Service 초간단 샘플 - Administrator 2010-08-18 4318
현재글 Silverlight4에서 WCF Service 연동하는 간단 샘플 - Administrator 2010-08-11 4097
다음글 2010년 여름 휴가 : 지리산 피아골에서 여수 만성리 해수욕장까지 - Administrator 2010-08-10 5287
관련 페이지 리스트
numtitlenamedateview
388 C 언어에서 값 전달과 참조 전달(Call By Value and Call By Re... Administrator 2023-03-09 1784
387 병합 알고리즘 순서도 2022-10-22 2655
386 C 언어 강의: scanf를 엔터키를 기준으로 여러 행으로 값을 입력 받기 Administrator 2022-01-09 3610
385 C 언어: scanf 사용해서 표준 입력인 콘솔로부터 나이를 정수로 입력 받아 출력 Administrator 2022-01-07 2608
384 Java 코드 샘플 - Function 인터페이스로 람다 식 만들기 Administrator 2022-01-04 2515
383 C# 코드 샘플 - 널 조건부 연산자 사용하기 Administrator 2022-01-02 2554
382 C# 코드 샘플 - 널 병합 연산자와 default 키워드 Administrator 2022-01-02 2486
381 C# 코드 샘플 - 널 병합 연산자로 문자열 변수의 NULL 값 확인하기 Administrator 2022-01-02 2397
380 C# 강의 - 14세 미만 체크 메서드 구현 Administrator 2022-01-01 2434
379 C 언어 천 단위 콤마 찍기 thousands_separator.c Administrator 2021-12-30 3273
378 for 문 순서도 - for 문(for loop) 순서도(flowchart) Administrator 2021-12-28 5296
377 C 언어 코드 샘플 - 전처리기 - 조건부 컴파일 Administrator 2021-12-27 2432
376 C 언어 코드 샘플 - 전처리기 - 매크로 함수 Administrator 2021-12-27 2435
375 http-server 설치하기 - 로컬 루프백 주소로 웹페이지 실행 2021-12-27 2453
374 C 언어 코드 샘플 - N명의 학생의 점수를 입력받아 1차원 배열에 저장 후 총점 구... Administrator 2021-12-27 2468
373 Java 코드 샘플 - 두 수의 합을 구하는 함수 Administrator 2021-12-26 2383
372 C 언어 코드 샘플 - 두 수의 합을 구하는 함수 Administrator 2021-12-26 2408
371 C# 교과서 강좌 - LINQ - Select 확장 메서드에 익명 형식 사용하기 Administrator 2021-12-26 2477
370 C# 교과서 강의 - LINQ - Select 확장 메서드를 사용하여 새로운 형태로 ... Administrator 2021-12-26 2424
369 C 언어 코드 샘플 - static-shared - 정적(공유) 변수 사용하기 Administrator 2021-12-26 2450
 
 
 
손님 사용자 Anonymous (손님)
로그인 Home