실버라이트 4 이전의 버전에서 Visual Studio에서 성능 프로파일을 지원하지 않은 것은 아닙니다. 다만, 개발 도구에서 지원하지 않았을 뿐이고, Command Line을 이용하여 브라우저를 Attached 하여 성능 프로파일을 할 수 있었습니다.

물론, 예전에도 실버라이트에서 성능 프로파일링을 위해 커맨드 라인으로 프로파일링을 할 수 있었습니다. 아래와 같은 순서대로 커맨드를 실행하면 되었습니다.

  1. VSPerfClrEnv /sampleon
  2. "c:\Program Files (x86)\Internet Explorer\iexplore.exe" C:\Breakout\Breakout\Bin\Release\TestPage.html
  3. VSPerfCmd /start:sample /output:MyFile /attach:<PID of iexplore.exe process>
  4. Run your scenario
  5. VSPerfCmd /detach
  6. VSPerfCmd /shutdown
  7. VSPerfClrEnv /off

이번 Visual Studio 2010 SP1에서는 개발 도구에서 직접 성능 프로파일을 지원합니다. 번거로이 Command Line을 사용할 필요 없이, 기존의 성능 프로파일의 사용 경험을 그대로 실버라이트 4에 적용할 수 있습니다.

Visual Studio 2010의 분석->성능 마법사 시작 메뉴를 클릭하여 실버라이트 응용 프로그램을 프로파일링 할 준비를 합니다.

아래와 같이 성능 프로파일을 시작하면 성능 마법사 페이지가 실행됩니다.

  • CPU 샘플링
    예를 들어, 많은 데이터 작업이나 UI요소 핸들링에서 CPU에 얼만큼의 부담을 주는지 측정할 수 있는 방법입니다.

  • 계측
    관리되는 응용 프로그램이 런타임에 얼마만큼의 리소스와 실행 시간을 갖는지 측정할 수 있습니다. 모듈/클래스/메서드 수준에서 성능을 측정할 수 있는 방법입니다.

  • .NET 메모리 할당
    관리되는 응용 프로그램이 얼만큼의 메모리를 소비하고, 가비지 컬렉션(Garbage Collection) 되는지 등의 수준 높은 메모리 정보를 제공합니다.

  • 동시성
    운영체제 차원에서 메모리의 교착 및 컨텍스트 스위칭(Context Switching)을 관찰하고 다른 프로세스에 어떤 영향을 받는지 Low Level의 정보를 제공합니다.


필자는 CPU 샘플링을 선택하였고, 2단계 페이지에서는 어떤 응용 프로그램을 프로파일링 할 지 선택합니다. 만약 솔루션 탐색기에 로드 되지 않은 프로젝트는 실행 파일(.EXE) 형태의 파일을 선택하면 소스 코드 없이 다음 단계로 이동할 수 있습니다.

3단계 마법사 페이지는 즉시 프로파일링을 시작할지 여부를 선택합니다. 기본 설정으로 마침을 선택하면 선택한 프로젝트 또는 실행 파일을 실행하고 프로파일링을 시작하게 됩니다.

응용 프로그램이 실행되면 다양한 테스트 시나리오로 테스트를 진행하고, 응용 프로그램을 마치면 수집된 프로파일링 정보로 프로파일링 결과 페이지를 볼 수 있습니다.

화면의 좌측 상단의 뷰를 변경하면서 성능 구간을 다양한 측면에서 분석을 할 수 있습니다.



Visual Studio 2010 SP1 의 실버라이트 4 개발 환경

Visual Studio 2010 SP1은 실버라이트 4 개발자 툴 킷이 포함이 되어 바로 실버라이트 4 개발을 할 수 있습니다.

그림 4 실버라이트 프로젝트 템플릿 선택

기존의 실버라이트 프로젝트 템플릿을 선택하여 프로젝트를 생성하면, 실버라이트 버전을 선택하여 원하는 실버라이트 버전으로 개발을 할 수 있습니다.

그림 5 실버라이트 버전 선택

실버라이트 4는 많은 사용자의 요구 사항과 코어의 변화가 있습니다. 자세한 내용은 아래의 링크를 ㅋ통해 MSDN 을 참고하십시오

참고

Silverlight 4의 새로운 기능 http://msdn.microsoft.com/ko-kr/library/dd772166(v=vs.95).aspx

실버라이트 4 의 새로운 기능

  • 컨트롤
  • 브라우저 외부에서 실행
  • 미디어
  • 네트워킹
  • 인쇄
  • 사용자 인터페이스
  • XAML
  • 데이터
  • 응용 프로그램 모델
  • 코어
  • Silverlight 디자이너
  • Windows Forms 플랫폼 지원
  • 관련 항목

SharePoint 2010에서의 Silverlight 지원

SharePoint 2010 2011. 2. 23. 08:30 Posted by 알 수 없는 사용자

 

SharePoint 2010에서 Silverlight 에 대한 지원을 알아보도록 하겠습니다. 내용을 살펴보고 나면 또한 손쉽게 Silverlight 콘텐츠를 구성할 수 있다는 것을 알 수 있습니다.

l  사이트 작업 메뉴의 기타 옵션 

l  Silverlight 웹 파트

개발자들이 손쉽게 Silverlight 콘텐츠를 구성하기 위한 웹 파트, 별도로 커스텀 Silverlight 웹 파트를 생성할 수도 있습니다. 

l  미디어 웹 파트

– Client Silverlight 미디어 플레이어 웹 파트, 위에 그림에서 추가 할 수 있습니다. 자산 라이브러리에서는 기본적으로 마우스만 올려도 동영상 플레이가 가능합니다. 

 


l  개발적 요소

– Client 개체 모델과 REST에서 Silverlight 콘텐츠에 대한 내용을 제공하고 있습니다. 이전 블로그를 참조하십시오.

Client Object Model – Silverlight (1) http://redju.tistory.com/19

Client Object Model – Silverlight (2) http://redju.tistory.com/20

REST – Silverlight http://redju.tistory.com/25

 

l  워크플로 시각화

      워크플로의 진행 사항을 시각화해서 살펴볼 수 있습니다, 이 또한 Silverlight 콘텐츠입니다. 

l  Performance Point Services의 분해 트리

– PPS의 분석 차트의 경우 분해 트리 메뉴를 볼 수 있고 사용자가 원하는 대로 손쉽게 분석 데이터를 분해해 볼 수 있습니다.


l  PowerPivot 갤러리

클라이언트용 Excel Add-in이 아닌 SharePoint 2010 PowerPivot 으로 해당 내용을 구성하고 나면 PowerPivot 갤러리를 제공하며 Excel 시트의 내용을 Silverlight으로 미리 보기가 가능합니다. 

 

이상으로 SharePoint 2010에서의 Silverlight 지원에 대한 사항을 살펴보았습니다. Silverlight 웹 파트와 Silverlight 관련 개체 모델, API를 통해 트리뷰 웹 파트, 전역 탐색 웹 파트, 이미지 뷰어 웹 파트, 메인 페이지의 애니메이션, 게시판에서의 Silverlight 등 다양한 내용으로 SharePoint 2010에서는 더 강력한 사용자 경험을 구성할 수 있습니다.

 

Microsoft Research 프로젝트로 알아보는 새로운 세대의 시작

Microsoft Research 프로젝트는 Microsoft 에서 진행하는 오픈된 기술과 연구를 하는 R&D 조직으로, 새로운 비즈니스와 기술을 결합하는 프로젝트입니다. 최근 들어 Microsoft Research 사이트의 프로젝트는 작년과 비교해 엄청나게 늘어났습니다. 작년까지만 해도 불과 10~30개의 오픈된 프로젝트가 현재 수백 개의 프로젝트로 늘어난 것이 굉장히 놀랍니다. 그만큼 기술의 트랜드가 빠르게 변한다는 반증이 되겠지요.

Microsoft Research 프로젝트를 열람해 보는 것은 매우 중요합니다. 왜냐하면 당장 2~3년 내에 현실화되는 기술들도 있으며, 현재의 기술이 작년의 Microsoft Research 프로젝트와 통합된 것이 많기 때문이죠. 앞으로 나와는 상관 없는 것들도 있지만, 간접적으로 영향권에 들게 될거라고 생각합니다. 과연 스마트 폰이 어느샌가 내 호주머니 속에 들어가게 될지 모르는 것 처럼 말이죠^^

그럼 Microsoft Research 프로젝트에서 진행하고 있는 재미있는 프로젝트를 소개해 드립니다. 말씀 드렸다시피 이 프로젝트들은 언제 사라질지 모르는 것들이지만, 가치가 있는 것들은 모조리 비즈니스/웹/개발 영역에 접목이 될 수 있습니다.

   

Microsoft Research 진행 프로젝트 소개

A programming language for composable DNA circuits

http://research.microsoft.com/en-us/projects/dna/

이 프로젝트는 프로그래밍 언어의 핵심 로직을 시각화(Visualization)해 주는 프로젝트입니다. 가령 아래와 같은 로직이 있다고 치면, 참 답답하죠. 왜냐하면 제가 무슨 뜻인지 모르니까요^^

directive sample 20000.0 1000

directive plot <kkks t^ kkksr>; <kkppl t^ kkpp x^>; <kpp t^ kppr>;

<kkk t^ kkkr>; <kkl t^ kk x^>; <k t^ kr>; <kkpl t^ kkp x^>; <kp t^ kpr>

directive scale 10.0

def bind = 0.0003 (* /nM/s *)

def unbind = 0.1126 (* /s *)

def Init = 50

def Low = 1

def Excess = 100

   

new x@ bind,unbind

new t@ bind,unbind

   

def SpeciesL(N,al,a) = N * <al t^ a x^>

def SpeciesR(N,a,ar) = N * <a t^ ar>

def BinaryLRxLR(N,al,a,b,br,cl,c,d,dr) = (* A + B ->{N} C + D *)

new i

( constant N * t^*:[a x^ b]<i cl t^ i t^ dr>:t^*

| constant N * Excess * x^*:[b i]:[cl t^]<c x^>:[i]:<d>[t^ dr]

)

   

new e1l new e1 new kkk new kkkr new kkl new kk new k new kr

new e2l new e2 new kkpase new kkpaser new kpasel new kpase

new kkks new kkksr new kkpl new kkp new kkppl new kkpp

new kp new kpr new kpp new kppr

   

( SpeciesL(1,e1l,e1) (* E1 *)

| SpeciesR(10,kkk,kkkr) (* 10 KKK *)

| SpeciesL(100,kkl,kk) (* 100 KK *)

| SpeciesR(100,k,kr) (* 100 K *)

| SpeciesL(1,e2l,e2) (* E2 *)

| SpeciesR(1,kkpase,kkpaser) (* KKPase *)

| SpeciesL(1,kpasel,kpase) (* KPase *)

| BinaryLRxLR(Init,e1l,e1,kkk,kkkr,e1l,e1,kkks,kkksr) (* E1 + KKK ->{r} E1 + KKKs *)

| BinaryLRxLR(Low,e2l,e2,kkks,kkksr,e2l,e2,kkk,kkkr) (* E2 + KKKs ->{r} E2 + KKK *)

| BinaryLRxLR(Init,kkl,kk,kkks,kkksr,kkpl,kkp,kkks,kkksr) (* KK + KKKs ->{r} KKP + KKKs *)

| BinaryLRxLR(Init,kkpl,kkp,kkks,kkksr,kkppl,kkpp,kkks,kkksr) (* KKP + KKKs ->{r} KKPP + KKKs *)

| BinaryLRxLR(Low,kkppl,kkpp,kkpase,kkpaser,kkpl,kkp,kkpase,kkpaser) (* KKPP + KKPase ->{r} KKP + KKPase *)

| BinaryLRxLR(Low,kkpl,kkp,kkpase,kkpaser,kkl,kk,kkpase,kkpaser) (* KKP + KKPase ->{r} KK + KKPase *)

| BinaryLRxLR(Init,kkppl,kkpp,k,kr,kkppl,kkpp,kp,kpr) (* KKPP + K ->{r} KKPP + KP *)

| BinaryLRxLR(Init,kkppl,kkpp,kp,kpr,kkppl,kkpp,kpp,kppr) (* KKPP + KP ->{r} KKPP + KPP *)

| BinaryLRxLR(Low,kpasel,kpase,kpp,kppr,kpasel,kpase,kp,kpr) (* KPase + KPP ->{r} KPase + KP *)

| BinaryLRxLR(Low,kpasel,kpase,kp,kpr,kpasel,kpase,k,kr) (* KPase + KP ->{r} KPase + K *)

)

어찌되었건 이런 코드는 다양한 방법으로 시각화를 해줍니다. 아래는 제가 시뮬레이션해 보니 이런 결과가 나오네요.

중요한 것은 이런 형태의 시각화(Visualization)은 지속적으로 발전하고 있습니다. 모델링(Modeling) 과 DSL(Domain Specifically Language) 의 중요성과 함께 지속적으로 발전하게 될 테니까요.

이 데모는 실버라이트로 작성되어 웹에서 직접 테스트해 보실 수 있습니다. http://lepton.research.microsoft.com/webdna/

   

   

Ajax View

http://research.microsoft.com/en-us/projects/ajaxview/

AJAX 기술로 직격타를 받고 성장한 것이 바로 Web 2.0 입니다. 그리고 Web 2.0을 넘어 Web 3.0이 언급이 되었고, 더 나아가 SNS(소셜 네트워크 서비스)로 발전한 가운데, 가장 영향력을 미친 기술이 AJAX 입니다. 기술적으로 트래픽의 라운드 트립을 줄이고, 분산 아키텍처에 지대한 영향을 미쳤으며, 더 나아가 브라우징(Browsing) 사용성을 극대화한 기술입니다.

하지만 사실상, AJAX 기술은 불필요한 라운드 트립을 증가시킬 수 있는 가장 적절한 수단이기 때문에 잘 사용하는 것이 어려운 기술이기도 합니다. Ajax(Asynchronous JavaScript and XML) 는 순수한 자바스크립트 기술로써 많은 부분을 클라이언트에 의존하지만 자바스크립트와 더불어 HTML CodeDom, XML, DHTML 까지 확장되어 그 영역이 상당하게 복합된 기술이라고 보셔도 됩니다.

   

그렇다면 과연 AJAX 를 어떻게 잘 쓸 것인가에 대한 고민을 이 Ajax View 프로젝트가 도움을 줄 것 같습니다. 이 기술을 중심으로 파생되어 AJAX Performance Profiling, Monitoring 기술의 기반이 되는 것 같습니다. 자세한 내용은 위의 사이트 링크를 참고하세요.

   

Automated Test Generation (ATG)

일찍이 Microsoft 는 1990년대 이후부터 테스팅 기술에 대한 연구를 꾸준히 해온 정통 소프트웨어 기업입니다. 코드 레벨의 테스트는 물론이며, Windows 95 시절에 지원되기 시작한 Plug-and-Plug(하드웨어를 꽂으면 인식하는 기술) 등 상상하지도 못했던 많은 기능을 자동화 테스팅한 기업이기도 합니다. 지금 우리 세대에서 맛보고 있는 테스팅 기술은 Microsoft 의 실제 내부의 기술과는 매우 격차가 있지요. (인정합니다.^^;)

처음 공식적으로 나온 White Box Automation Test 도구인 PEX 가 Visual Studio 2008 시절부터 나오긴 하였지만, 완성된 기술은 아니며 계속 발전하는 기술입니다. PEX 와 관련하여 온라인 세미나를 찍은 것이 있는데 못찾겠군요.;; 대신 아래의 테스팅과 관련된 내용을 참고 하세요.

[ALM-Test] 6. Load Runner vs Visual Studio 2010 테스팅 비교 분석 - http://willstory.tistory.com/4 제공
[ALM-Test] 5. 테스트 계획
[ALM-Test] 4. 테스터(SDET) 의 역할
[ALM-Test] 3. 테스터에 대한 오해와 진실
[ALM-Test] 2. 왜 단위 테스트를 해야 하는가? [2]
[ALM-Test] 1. 왜 단위 테스트를 해야 하는가? [1]
[Testing] Moq.NET (T/B Driven Development)
[Testing] BDD (Behavior-Driven Development–행위 주도 개발)
[Testing] TDD (Test-Driven Development-테스트 주도 개발)

아무튼 이런 테스팅을 위해서 Dynamic Proxy 기술과 Dynamic MSIL Injection 같은 기술이 필요한데, 이미 이런 부류의 닷넷 기술이 존재하긴 합니다. 그 중에 대표적인 것이 Microsoft.CCI 와 Code Contract, Castle Dynamic Proxy, Mono Cecil, Moles 등등등…

하지만 이번 이 프로젝트는 이 기반 기술 들을 통합하려는 의지를 보이는 것 같습니다. 개인적으로 굉장히 기대를 하고 있는 프로젝트이기도 합니다.

   

Code Contracts

http://research.microsoft.com/en-us/projects/contracts/

Code Contracts 는 이미 유명한 기술입니다. 초기에 Microsoft Research 프로젝트로 진행 중이다가 Visual Studio 2008 시절에 릴리즈가 되었으며, .NET Framework 4.0 와 Visual Studio 2010 에는 아예 탑재 시켜버렸습니다. Code Contract 를 직역하면 코드 계약(Code Contract) 인데, 코드간의 명확한 명세를 코드 레벨에서 작성하는 것입니다. 이것도 예전에 온라인 세미나를 했었는데 못찾겠군요;;

명확한 코드 계약이 왜 필요하냐…? 라고 물으신다면 당시 세미나에서 예시를 든 것이, "당신이 회사를 다닌다면 회사와 계약을 합니다. 계약서에는 연봉 정보도 있고, 근태 규칙도 있고 여러 가지가 있습니다..." 마찬가지로 내가 만든 코드를 누군가 써야 할 때 바로 그 명세가 되는 것이 Code Contract 입니다.

이 기술로 파생될 수 있는 기술은 상당히 많습니다. 명확하게 코드를 계약하게 되면 테스트에 굉장히 용이하며, 더 나아가 자동화 테스트(PEX 와 같은)에서 훨씬 여유로워 집니다. 그리고 정적 분석(Static Analytics) 기술과 접목하여 잠재적인 코드의 계약 관계를 파악하여 미리 경고나 오류를 발생해 줄 수 도 있고요.

하지만 저의 경우는 그리 톡톡히 효과를 보지는 못했습니다. 왜냐하면 명확한 계약은 1:1 계약에서 효과가 있지만, 1:N, N:N 간의 계약에서는 그 계약 조건이 명확해 질 수가 없습니다. 현재 나온 PEX 기술과 Code Contract 를 조합하여 계약을 파생시키는 기술적인 부분이 부족하며, 계약의 제약 조건 등 아직은 적극적으로 사용하기에는 부족해 보입니다.

하지만 이 기술을 근간으로 하여 더 효과적인 많은 방법들이 위의 Automated Test Generation (ATG) 프로젝트 등으로 활발히 연구 중이며, 앞으로도 지속적으로 관심을 가질 기술은 분명합니다.

   

Composable Virtual Earth

http://research.microsoft.com/en-us/projects/cve/

제가 설명드릴 만큼 깊이 이해를 못하고 있기 때문에, 참고하세요^^; 중요한 것은 이미지 프로세싱 등의 기술로 효과적으로 운용을 하고자 하는 것 같습니다.

   

DryadLINQ

http://research.microsoft.com/en-us/projects/dryadlinq/

이 프로젝트는 C#의 LINQ+Parallel 기술을 접목하여 분산된 데이터의 접근성을 극대화한 기술입니다. 이미 잘 알고 있는 LINQ 와 .NET 4.0부터 제공되는 TPL(Task Parallel Library)를 이용하여 단순한 분산 데이터에 접근하는 방법입니다. 기존의 LINQ to SQL, Entity Framework 과 같이 단일 데이터 소스가 아닌 클러스터링 된 분산 데이터에 대상이 됩니다.

이 프로젝트는 기존에 존재하는 기술을 접목하여 새로운 기술의 탄생의 근원이기도 합니다. 하지만 생각해보면 분산된, 클러스터링된 데이터를 왜 DryadLINQ 를 써야 할까. 그만큼 대규모의 데이터면 '데이터베이스 관리자를 따로 둘텐데' 말이죠.

제 짧은 소견으로는 분명히 이 기술은 Microsoft Cloud 기술인 Azure 에 접목될 가능성이 농후합니다. 즉, Azure 기반의 클라우드 기술을 엔터프라이즈(Enterprise) 급으로 끌어올릴 수 있는 전략적인 기술이기도 합니다. 이런 부분에서 아직 Azure 는 완성된 기술은 아닙니다. 계속 발전하는 기술이지…

   

Doloto

http://research.microsoft.com/en-us/projects/doloto/

이 프로젝트는 정말인지 기대가 됩니다. 아까 말씀 드린 'Ajax View' 프로젝트와 연관이 있어 보이지만, 이 프로젝트는 나름대로 효과를 톡톡히 보여줄 것 같습니다.

문제는 Web 2.0 은 말씀 드린대로 AJAX 기술과 떨어질 수 없는 관계이기도 합니다. 그런데 데이터 처리를 서버&클라이언트로 분산하면서 결국은 서버를 거치게 되고, 원치않던 라운드 트립은 증가하게 되고, 결국은 사용자의 사용성(광범위한…)은 저하될 수 있습니다. 뭐가 문제일까요? AJAX 가 문제일까, Web 2.0 이 문제일까, 코드가 문제일까, 시스템이 문제일까….

Doloto 는 과분하게도 이런 문제를 큰 고민 없이 해결해 줍니다. 아래는 그래프는 Doloto 를 적용하면 대략 50%에 근사하게 성능이 개선되는 수치입니다. 성능을 개선하기 위해 특별히 코드를 변경할 필요도 없다고 합니다. 그렇다면 연관된 기술은 서버 코드/클라이언트 코드 분석 기술 이외에 캐싱(Caching) 일 텐데…

일단 기대가 됩니다.

   

ExtendedReflection - Dynamic Analysis Framework for .NET

http://research.microsoft.com/en-us/projects/extendedreflection/

이 기술은 'Automated Test Generation (ATG)' 과 없지 않아 연관이 될 수 있을 것 같습니다. 여기에서는 분석 도구라고 설명하지만, 이런 Low-Level의 구현이 가장 잘 되어 있는 프레임워크는 Mono.Cecil입니다. 그러고 보면 약간은 중복성이 있어 보이는 프로젝트이기도 합니다.

적어도 Microsoft.CCI 는 그렇다쳐도 Microsoft.Unity.ObjectBuilder, Castle.DynamicProxy와 Mono.Cecil은 .NET 오픈 소스 중에 가장 대표적인 Dynamic Proxy 및 MSIL 기술인데, 어찌될지 그냥 지켜보고 있습니다.

단순히 기존 존재하는 오픈 소스 대체용도인지, 다양한 기술을 접목하고자 하는 진정한 프레임워크 기반 기술인지는 두고 볼 일입니다.

   

F#

http://research.microsoft.com/en-us/projects/fsharpproj/

깜놀하셨죠? 바로 F# 도 Microsoft Research 에서 태생한 언어입니다. 그냥 그렇다구요^^

   

Graphical tools for text analysis

특별히 아래의 그림만으로 이해하시리라 믿고, 패스!

   

HD View

예전에 Silverlight 의 딥줌(DeepZoom) 을 기억하십니까? 저는 사실 결과물에 대해 다른 것은 없지만, 뭔가 이미지 프로세싱 측면에서 다른 접근 방식을 가지고 가는 것 같습니다. 워낙 자료도 적어서 뭐라고 설명 드리기는 힘들 것 같아요.

다만, 아래의 그림을 보시면 딥줌과 유사하지만, 그래도 유사할 것 같아요^^… 어떤 알고리즘인지가 궁금할 뿐;;

   

HD View SL

위의 'HD View' 의 실버라이트 버전입니다. 참고^^

   

   

정리

Microsoft 는 소프트웨어 개발 기업으로 세계에서 1위 기업입니다. 그 중, Microsoft Research 프로젝트는 여러분들에게 오픈된 프로젝트일 뿐이며, 내부적으로 더 많은 연구가 계속되고 있습니다. 예를 들어, http://codeplex.com 은 여러분들에게 공개된 오픈 소스 커뮤니티지만, Microsoft 내부에는 더 많은 프로젝트들이 수백 개씩 오픈 되어 있습니다. (제가 어떻게 아냐구요? Microsoft 직원이 쓴 책에 그렇다고 말하더군요^^)

다만, 그 중에서 저희에게 오픈된 기술 R&D 영역이 Microsoft Research 프로젝트입니다. 그리고 관심이 없으셔도 상관은 없답니다. 최근 기술 트랜드는 너무나도 빨리 나오고, 변하기 때문에 모두 따라가기가 벅차기도 합니다. 그리고 이 모든 것을 자세하게 알 수 없게 되었습니다. 중요한 것은 내가, 여러분들이 받아들일 기술/트랜드를 준비할 수 있겠지요. 모르고 아는 것과 알고 아는 것은 상당히 다릅니다.

직접적으로 이런 기술들이 나에게는 관련이 없지만, Microsoft 는 비즈니스/웹/시각화/클라우드에 지속적으로 시도를 하는 것을 알 수 있으며, 장차 알게 모르게 도움이 될 거라고 믿습니다. 그리고 이 서비스/기술을 이용하는 사람은 여러분들이 될 수도….^^

REST – Silverlight

SharePoint 2010 2010. 7. 30. 08:30 Posted by 알 수 없는 사용자

 

 

이전 내용에서 REST 에 대한 소개와 .NET에서 REST API를 이용해서 SharePoint 데이터를 액세스하는 내용을 알아보았습니다. 이번 내용은 Silverlight 응용 프로그램에서 REST API를 통해 액세스하는 방법을 다루어봅니다.

 

먼저 Silverlight 응용 프로그램을 생성합니다. Silverlight 디자인은 아래와 같이 Button ListBox로 구성합니다.

 

Silverlight 응용 프로그램에 ListData.svc를 서비스 참조 추가를 통해 프록시 클래스를 생성합니다.

프록시 클래스의 클래스 뷰를 보면 앞에서 살펴본 .NET 응용프로그램과 동일하다는 것을 알 수 있습니다.

 



Button
의 클릭 이벤트를 생성하고 아래와 같은 코드를 작성합니다. HomeDataContext 클래스의 인스턴스를 생성하고 DataServiceQuery 클래스를 통해 비동기적으로 호출합니다.



GetAsyncData 메서드에서 결과값을 바인딩하면 됩니다.


 

Xap 파일을 배포해서 SharePoint 2010 Silverlight 웹 파트에 연결해서 버튼을 클릭하면 손쉽게 Silverlight 응용프로그램에서도 SharePoint 데이터를 REST 를 통해 액세스할 수 있다는 것을 알 수 있습니다.

 

'SharePoint 2010' 카테고리의 다른 글

SharePoint 2010 프로젝트 디버깅  (0) 2010.08.31
REST - jQuery  (0) 2010.08.30
REST -.NET  (0) 2010.07.28
SharePoint 2010 개발환경 구축 가이드  (0) 2010.07.21
Client Object Model – 정리  (0) 2010.05.28

.Net Ria Service + IIS6 + Silverlight 4 Troubleshooting!!

RIA 2010. 6. 14. 11:31 Posted by 알 수 없는 사용자



기쁜 마음으로 아주 오래간만에 포스팅을 합니다.
문제는 간단한 거였는데 상당히 돌아온 느낌이 드는군요.
하지만 그 와중에 많은 글들을 보았고 또 많은 것들을 배웠습니다.

힘들었던 하루지만 돌이켜 보면 재밌네요. :)

문제)

Windows 7 x64, IIS7 에서 개발을 했고 Windows 2003 Server R2, IIS6 에 배포하려했습니다.
Visual Studio 2010 Ultimate, MS-SQL 2005

실버라이트 4 와 .Net Ria Service (이하 리아서비스)를 이용하여 프로젝트를 만들었습니다.
개발 할 때는 전혀 문제가 없었는데 막상 배포하려고 하면서 문제가 발생하기 시작했습니다.

배포 하면서 몇가지 의문이 생겼습니다.
1. 리아서비스가 IIS 6에서도 돌아갈까..
 - WCF Ria Service 는 IIS6, IIS7을 지원한다고 합니다. 문제 없이 돌아가죠.

2. .NET Framework 4가 필요한가?
 - 프레임 워크 4가 필요하더군요.
 어떤 글에서는 3.0도 돌아간다는 글을 본것 같은데 문제는 제가 Linq 쿼리를 상당히 많이 사용했고, 
 또 실버라이트 4 비지니스 어플리케이션으로 개발하다 보니 프레임워크 4가 필요했습니다.

...

서버에 프레임워크 4를 설치했습니다.
WCF Ria Service를 설치 하기에 앞서 Silverlight SDK 를 먼저 설치했습니다.
파일 이름은 "RiaServices.msi" 군요.. 이놈이 요구하는게 Silverlight SDK 였습니다.

배포 환경이 만들어 졌겠다 싶어서 얼른 실버라이트 웹 프로젝트에서 필요한것만 추려냈습니다.


Bin - 꼭있어야겠죠.. 빌드 본이니.
ClientBin - Silverlight xap(잽) 파일이 존재하는곳이죠.
*.js - 전 어차피 javascript를 안쓰기때문에 필요없지만 혹시나 필요하게 될까봐. 그냥 두었습니다.
web.config - 문제의 주범이였습니다.

나머지 두개의 .xml 파일은 WCF  서비스를 할때에 필요했던거라 포함시켜봤는데 테스트는 안해봤습니다.
이 두놈이 도메인서비스에서도 필요할지는 잘 모르겠네요.

IIS 에 잘 모셔두고 MIME Type과 권한 설정, Asp.net Framework 변경을 마치고 테스트를 했습니다.
뚜둥..~

Load Error
System.ServiceModel.DomainServices.Client.DomainOperationException : Load operation failed for query 
'GetTbl_Curriculum'. Remote server returned an error ---> 







해결)

처음 보는 에러라서 적잖게 당황했습니다.
뭘 잘못했지..
팀아저씨의 블로그에서 좋은 글을 발견했습니다.

Deploying your Silverlight and WCF RIA Services application

영어라서 압박이 있었는데 처음보는 어셈블리가 보였습니다.
System.Web.Ria 이분 수소문 해봤습니다.
알고보니 Visual Studio 2010 RC 시절에 잠깐 등장했던 분으로 이름이 바꼈네요.


에서 System.Web.Ria 가 아니라. 아래 세분을 위와 같이 해주시면 되겠습니다.


덤으로 이분도 추가해주시길.. System.ComponentModel.DataAnnotations.dll
Copy Local = True 로 하니 빌드시 Bin 폴더로 쏙 들어가네요.
팀 아저씨 글중에 "msiexec /i RiaService.msi SERVER=TRUE"라는게 있는데 보아하니 Ria Service를 설치하는거 같은데요.. 아직까지 뭔지 모르겠습니다.
해봤는데 안되고 해서 패스했습니다.
사실 아까 Silverlight SDK 설치 후에 RiaServices.msi 파일 설치했으니깐요.. 뭐 같은거라 봅니다만..

팀아저씨 글은 어려웠습니다. 뭐 저리 수정해야될게 많은가.. 보아하니 비슷하기도 하고 예전꺼라서 틀린것도 있고해서
web.config 파일은 수정하지 않았습니다.

뭐 이제 리아서비스 관련 dll도 추가했으니 되었겠다. 싶어서 테스트를 해봤습니다.

Load Error
System.ServiceModel.DomainServices.Client.DomainOperationException : Load operation failed for query 
'GetTbl_Curriculum'. Remote server returned an error ---> ..


사실 이 에러는 생각해보니 오늘 하루 백번은 본것 같습니다.

 WCF 서비스를 만들때 우리들은 Myservice.svc ".svc" 확장자를 가진분을 보았을 겁니다.
리아서비스는 왜 이분이 안보일까요.!!

에러내용도 도메인 서비스에서 쿼리를 못가져오겠다고 하니깐.. 이분한테 문제가 있을것 같았습니다.
저의 예상은 그대로 적중!

다들 아시는 내용인가요..저만 몰랐던 건가요.
도메인 서비스의 .svc 파일은 런타임때 생성이 된다고 합니다.
이분을 찾아야했습니다.

분명히 엔드포인트가 있을것이야!!!

그분의 엔드포인트는 이런식으로 - -; 찾아갈 수 있었습니다.
1. SolKongpill - 제 솔루션 이름
2. localhost:1234 - 제 도메인 이름
3. kongpillDomainService - 제 도메인 서비스 이름.
 - 비지니스 프로젝트를 만들어보시면 알겠지만 도메인 서비스는 주로 웹 프로젝트 하위의 Services 폴더 에 만듭니다.
 - 꼭 그러실 필요는 없으나 알아두세요.

이분을 조합해서 만듭니다.

http://localhost:1234/SolKongpill-Web-Services-kongpillDomainServices.svc

조잡한가요.. 아니면 슬러쉬를 그냥 '-' 로 대채한 느낌일까요..
아무튼 이게 답니다. 이분을 브라우저 주소에 옮겨보니..


인증구성이 어쩌구 합니다.

이분께서 잘못되었으니 쿼리를 찾을 수없다 뭐시다 예외가 나왔던 겁니다.

IIS / 제가 만든 웹서비스 / 속성 / 인증 / 편집 에 가봤습니다.
"익명 엑세스 허용", "윈도우 통합 인증" 두개가 체크 되어있네요.

"익명 엑세스 허용"만 하고 "통합 인증"은 체크 해제 합니다.
web.config 파일도 수정해주셔야합니다.

   ====>



 
윈도우 인증으로 바꿔주셔야합니다.

"IIS 6 재시작"


반가운 화면입니다. 
실제로 실버라이트 페이지도 문제 없이 돌아가네요.
문제의 원인이 무엇이고 그 문제에 대한 예외 메세지를 보니 의외로 쉽게 처리할 수 있었던 문제였네요.

참고로 IIS 의 특정 폴더 하위에 개발하신 프로젝트를 두셔야 될 경우는 꼭 
가상웹사이트를 만들어서 사용하시길 바랍니다. 그냥 폴더 하위로 링크를 걸어두니깐 오류가 나더군요.

윈도우폰 7 개발환경 공개

Visual Studio 2010 2010. 3. 16. 04:10 Posted by 알 수 없는 사용자
오늘부터 3일 동안 미국 라스베가스에서 MIX10 컨퍼런스가 열리는데 알려진대로 첫날 키노트에서 윈도우폰7 관련 정보가 공개되었습니다.
실버라이트 기반으로 어플리케이션 개발이 가능하고 게임은 XNA Game Studio 4.0으로 가능합니다.
http://developer.windowsphone.com/windows-phone-7-series/ 에 가보시면 윈도우폰7 SDK를 포함한 다양한 정보에 접근이 가능합니다.
발표되자마자 빠르게 설치를 해보았는데 설치되는 요소는 다음과 같습니다.


기본적으로 윈도우폰 7 개발 관련 애드인과 기반이 되는 실버라이트 4와 SDK가 설치됩니다.
여기서 설치되는 실버라이트 4의 버전은 RC버전입니다.
그리고 XNA Game Studio 4.0과 윈도우폰 에뮬레이터 등이 설치되고 Visual Studio 2010 Express for Windows Phone도 함께 설치되는데 Visual Studio 2010 RC버전에서도 마찬가지로 개발 환경이 구성됩니다.

설치를 하고 Visual Studio 2010을 실행 해 보면 개발 환경에 윈도우폰과 XNA 4.0 템플릿이 추가된것을 볼 수 있습니다. 일반적인 어플리케이션을 개발 할 때는 실버라이트로 하면되고 게임은 XNA를 선택해서 개발하면 됩니다.


윈도우폰 어플리케이션을 선택하고 프로젝트를 생성하면 다음과 같은 작업창이 나타납니다.


기존의 익숙한 환경에 윈도우폰 UI의 모습과 실버라이트 기반이기 때문에 XAML 코드가 나타나는것을 알 수 있습니다. 개발 언어는 역시 C#으로 하면 되어서 기존의 지식을 살려서 따로 학습을 하지 않아도 바로 적용할 수 있습니다.

빌드를 하면 윈도우폰의 에뮬레이터가 실행되면서 윈도우폰의 경험을 그대로 살려 볼 수 있습니다.


윈도우 모바일의 에뮬레이터와는 다르게 아주 빠르게 실행되어 쾌적한 개발 환경을 제공합니다.
MIX10에서 발표가 되자마자 빠르게 설치하여 기본 개발 환경을 알아보았는데 앞으로 세세한 정보와 XNA에서의 개발환경도 알아보도록 하겠습니다. Microsoft의 윈도우폰 많이 기대해주세요 :)


저희 Viva 2010 팀은 차세대 개발 플랫폼인 Visual Studio 2010, Visual Studio Team System 2010, C# 4.0, C++ 0x, Cloud 등을 공부하고 다양한 매체를 통해 알리는 팀 입니다.

저희 VSTS 2010 팀은 최근 Visual Studio 2010 베타 2 공개와 앞으로 곧 나오게 될 RC 및 정식 버전 출시에 발 맞춰서 활동을 더욱 강화하기 위해서 팀 멤버를 추가로 모집하고 있습니다.


그간의 활동

온라인 활동

http://vsts2010.net 블로그를 통해서 총 164개의 Article 발행, 총 방문자 약 50000, 일 평균 300명의 방문


오프라인 활동


[2009년 6월 10일 MSDN 주간 세미나]

강보람 - C#연대기 -C#의 Before/After

공성의 - VSTS2010에서의 소프트웨어 품질 관리

김병진 - VSTS 2010 Architecture & UML

엄준일 - Managed Extensibility Framework

최흥배 - Visual C++ 10, C++0x 그리고 Concurrency Runtime


[TechDays 2009 참여]

김병진, 강성재 - Visual Studio Team System 2010 Overview

최흥배새로운 시대를 여는 Visual C++ 10

강보람C# 4.0 with dynamic : 사랑과 전쟁. 그들의 4주 후…

조진현Multi-threaded rendering in DirectX11

엄준일, 공성의Visual Studio Team System 2010 With Agile

김대욱, 김태균WPF4.0 을 위한 VIsualStudio 2010



활동 영역

온라인 활동 영역

팀 블로그 활동

팀 블로그를 통해 자신의 글을 게시할 수 있습니다. 현재 수백 명의 정기 구독자에게 글이 공개가 되며, 팀 블로그가 구글 등의 검색 상위권에 이르게 됨으로 자신의 글이 상위 검색에 노출되는 간접적인 혜택을 누릴 수 있습니다.

온라인 세미나

한국 마이크로소프트와 팀 자체에서 진행하는 여러 가지 온라인 세미나의 스피커로 활동하게 됩니다.

온라인 커뮤니티(예정)

온라인 커뮤니티 활동과 함께 커뮤니티 운영 활동을 하게 됩니다.

   

오프라인 활동 영역

오프라인 스터디

오프라인 스터디를 통해 자신의 분야를 공부하고 발표합니다. 그리고 좋은 콘텐츠는 곧바로 온라인/오프라인 세미나 스피커 활동으로 이어집니다.

오프라인 세미나

한국 마이크로소프트와 팀 자체에서 진행하는 오프라인 세미나의 스피커로 활동할 수 있습니다. 팀 자체에서는 매월 오프라인 정기 세미나를 진행하며, 자신의 노하우를 오프라인 세미나를 통해 전달할 수 있는 기회를 드립니다.

기고

팀 블로그를 통해 축적된 자신의 콘텐츠는 월간 잡지 등에 기고할 수 있습니다.

책 집필, 번역(예정)

다양한 노하우를 책으로 집필하고, 외국의 유명 서적을 번역하는 활동을 계획하고 있습니다.

Microsoft MVP 추천

MVP 에 되고자 하시는 분은 한국 이크로소프트 직원과 마이크로소프트 MVP 의 추천을 드립니다.

   

모집 분야

  • Cloud Development
  • C#
  • VB.NET
  • C++
  • Agile Development
  • Parallel Development
  • Web Development
  • ASP.NET
  • Silverlight
  • Windows 7 Development
  • RIA Development
  • Architect Development
  • Office Business Application Development
  • .NET Framework 4.0
  • Visual Studio 2010
  • Visual Studio Team System 2010
  • ETC…

   

마감

정해진 마감 일자는 없습니다만, 적어도 12월 중에는 저희와 함께 할 수 있었으면 합니다. 가능한 빨리 지원해주시길 부탁드립니다.

   

지원 방법

아래의 양식을 채워주시고 kkongchi@gmail.com 으로 보내주세요.

이름

  

사진

  

블로그

  

전화번호, 이메일

  

티스토리 아이디

  

소개

(직업 및 회사명 포함)

관심 분야

(중복 가능)

   

지원해 주신 내용에 대한 심사 후, 오프라인 인터뷰를 통해서 멤버를 선정하게 됩니다. 이번에는 특히 활발한 온라인 활동, 특히 개인 블로그 활동을 많이 해오신 분들을 우선적으로 선정할 예정입니다.

   

지원 시 유의 사항

참고로 저희 스터디에서는 배우고자 지원하시는 분들은 선발하지 않습니다. 저희 팀의 스터디에서는 여러분들에게 아무것도 가르쳐주지 않습니다.

저희 팀에서는 절대 실력을 보고 맴버를 선발하지 않습니다. 물론 실력이 출중하면 좋겠지만 새로운 VSTS 2010 분야는 어느 누구도 밟아보지 않은 새로운 황야와 같습니다. 새로운 길을 함께 가실 활동력이 충분하신 분들은 꼭 지원해 주시기 바랍니다. ^^

Visual Studio 2010과 Blend Preview for .NET 4 통합 문제

Visual Studio 2010 2009. 11. 23. 17:40 Posted by 알 수 없는 사용자
Visual Studio 2008과 Expression Blend 3를 사용 할 때 Visual Studio의 프로젝트/솔루션의 xaml 파일에서 마우스 오른쪽 버튼 클릭 후 Open in Expression Blend 메뉴를 클릭하면 Blend 3가 열리면서 디자인 작업 하는 방법을 많이 사용하실겁니다.

이번에 PDC09에서 Silverlight 4가 발표되면서 VS2010과 Blend Preview for .NET 4를 설치 하신 분들이 많을텐데 VS2010에서 Open in Expression Blend 메뉴를 클릭하면 Blend Preview for .NET으로 열리는게 아니고 Blend 3로 열리는것을 경험 할 수 있습니다.

기존에 설치된 Blend 3 때문에 그런 줄 알았는데 VS2010과 Blend Preview for .NET 4만 클린 설치 해도 Blend가 실행 되지 않는다고 합니다. 이 경우에는 Open in Expression Blend 메뉴가 나타나지 않는다고 하네요.


결론적으로 Blend 3가 함께 설치된 경우에만 메뉴가 나타나며 그것도 Blend 3로만 연결되어 실행되는 결과가 나타납니다.
이 문제를 해결하기 위해서는 레지스트리를 수정해서 해결 할 수 있습니다.

레지스트리 편집기에서 HKLM\Software\Microsoft\Expression\Blend 항목에서 VS키에서 String 이름을BlendLaunchPath 로 해주고 Expression Blend의 경로를 입력해주면 됩니다.

 1: [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Expression\Blend\VS]
 2: "BlendLaunchPath"="\"c:\\Program Files\\Microsoft Expression\\
     Blend Preview for .NET 4\\Blend.exe\""

x64 시스템의 경우 경로가 조금 다릅니다.
HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\Expression\Blend\VS

Wow6432Node 아래에 있으니 주의하시고 수정하시기 바랍니다.

수정하기 번거로우면 첨부 파일을 열어서 시스템에 맞는 파일로 실행시켜주면 됩니다.



※ 원문은 Microsoft의 Tim Heuer 블로그에 있습니다.

Silverlight 4 Beta 공개

RIA 2009. 11. 19. 09:00 Posted by 알 수 없는 사용자

Microsoft PDC09 행사 2일째가 진행중인데 Scott Guthrie의 키노트 발표에서 드디어 Silverlight 4가 공개되었습니다.
올 해 3월달에 MIX09 행사에서 Silverlight 3 베타가 발표되고 7월에 정식 버전이 나왔는데 이후 4개월만에 다시 새로운 버전 베타가 나왔네요.
PDC09 생중계를 보면서 설마설마했는데 발표가 끝나자마자 바로 다운로드가 가능해졌습니다.

아쉽게도 Visual Studio 2010 Beta2에서만 설치가 가능하며 Visual Studio 2008에서는 SL4를 지원하지 않습니다.
그렇지만 VS2010에서 새롭게 향상된 점을 이용한 SL4개발이 기대되지 않나요? ㅎㅎ

키노트에서 SL4의 새로운 점과 데모를 보여줬는데 그 동안 요구사항이 많았던 기능들이 대부분 들어간 것 같습니다.
많은 기능 향상이 이루어졌지만 구글 크롬 브라우저의 정식 지원도 눈에 띄네요.
기존에도 구글 크롬에서 실버라이트가 사용이 가능했지만 공식 지원이 아니라서 그런지 간혹 문제점이 발견되기도 했었는데 SL4에서는 크롬 브라우저를 지원하게 되었습니다.
개인적으로는 웹캠과 마이크 지원, 그리고 HTML 지원 등이 가장 맘에 드네요.
이 외에도 정말 많은 기능과 성능 향상이 이루어졌습니다.
자세한 내용은 Silverlight 4 Beta 공식 사이트에서 확인이 가능합니다.

일단 SL4 발표 소식을 간단하게 전하며 앞으로 차근차근 Silverlight 4와 Visual Studio 2010에서의 개발 방법에 대해 알아보도록 하겠습니다.

VS2010 베타2의 WPF & Silverlight 디자이너 성능 향상 팁

Visual Studio 2010 2009. 10. 28. 00:00 Posted by 알 수 없는 사용자
Visual Studio 2010 베타2에서는 WPF와 Silverlight 개발을 위한 디자이너(코드네임 Cider) IDE가 많이 향상되었습니다. VS2010 베타1에서 특히 사용하기 불편 했던 점이 성능에 관한 문제였는데 베타2에서는 불편함 없이 사용이 가능합니다.

Channel 9의 VS2010 베타2의 Cider 디자이너 소개 동영상을 보시면 성능을 더욱 향상 시킬 수 있는 팁이 소개됩니다. VS2010 베타2가 개발 되는 중에 늦게 발견되어 베타2에는 포함되지 못했다고 하는데 최종 릴리즈 때는 따로 수정이 불필요 하도록 포함된다고 합니다.

간단하게 레지스트리에 키를 추가 해주는 방법으로 성능 향상이 이루어 진다고 하는데 방법은 다음과 같습니다.
※ 레지스트리 수정은 시스템에 큰 영향을 줄 수 있으니 주의 바랍니다.

1. 먼저 VS가 실행 중이라면 모두 종료합니다.
2. regedit 명령으로 레지스트리 편집기를 엽니다.
3. HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\10.0 키를 선택합니다.
4. 마우스 오른쪽 버튼을 클릭하고 "새로만들기 - 키"를 선택하고 ClrHost라는 이름을 줍니다.
5. 새로 추가한 키에서 다시 마우스 오른쪽 버튼을 눌러 DWORD32 값을 StartupFlags 이름으로 추가합니다.
6. 값은 5로 해줍니다.
7. 레지스트리 편집기를 종료합니다.
8. 이제 모든 수정이 완료되었고 평소처럼 VS를 사용하면 됩니다.

실제로 어느정도 성능이 향상되는지는 알 수 없으나 강력히 추천하고 있으니 꼭 적용시켜서 사용하시길 바랍니다.

VS 2010 Beta 2 설치 과정에서 Silverlight SDK 문제

Visual Studio 2010 2009. 10. 22. 11:00 Posted by 알 수 없는 사용자

기존에 Visual Studio 2008에서 Silverlight 3 SDK를 설치하여 사용 하시던 분들 중에
Visual Studio 2010 Beta 2를 설치 할 때 Silverlight SDK에서 에러가 나는 경우가 있습니다.

Silverlight 3 SDK가 초기에 배포된 이후 마이너 업데이트 되어 GDR 버전이 나왔는데
VS2010 설치를 할 때 같이 설치되는 Silverlight 3 SDK 버전은 최신 버전(GDR)입니다.

VS 2010 Beta 2에서는 최신 버전을 자동으로 설치하지 않고 설치 과정에서 에러를 표시하게 되는데
이 문제는 RTM에서는 해결 될 예정이라고 합니다.

초기 버전의 Silverlight 3 SDK를 사용 하시던 경우에는 먼저 삭제를 하고 Visual Studio 2010 Beta 2를
설치하시면 에러 없이 깔끔하게 설치가 완료 될 것입니다.

그러나 이미 설치 한 경우도 Visual Studio 2010 Beta 2 사용에는 문제가 없고
단지 Silverlight 3 SDK 버전 문제로 에러가 나는 것입니다.

최신 버전의 Silverlight 3 SDK를 사용하기 위해선 Silverlight 3 SDK를 삭제하고
최신 버전인 GDR 버전으로 다시 설치 해 주면 됩니다.

여기에서 Silverlight 3 SDK GDR 버전의 다운로드가 가능합니다.

Silverlight 3 & Blend 3 RC 공개!!!

RIA 2009. 7. 10. 01:50 Posted by 알 수 없는 사용자


Silverlight 3 정식버전이 드디어 공개됐습니다. 현지 시간으로 7월 10일에 공개된다는 기사가 있었는데 약간 일찍 나왔습니다.
Blend 3도 공개됐는데 RC라고 붙은거 보니 아직 완전 정식판은 아닌 것 같네요.
그래도 이번에는 SketchFlow까지 포함되어서 MIX09에서 보여 주었던 모든 기능을 사용 할 수 있습니다.
Deep Zoom Composer도 역시 Silverlight 3에 맞게 업데이트 되었습니다.

아래 링크에서 다운받을 수 있습니다.
Silverlight 3 Tools 설치하시면 SDK도 같이 설치되니 한번에 설치 하실 분들은 참고하세요.