다음을 통해 공유


Silverlight(XAP) 웹 리소스

 

게시 날짜: 2017년 1월

적용 대상: Dynamics 365 (online), Dynamics 365 (on-premises), Dynamics CRM 2016, Dynamics CRM Online

중요

Microsoft Silverlight 웹 리소스는 이전 버전과의 호환성을 위해 Microsoft Dynamics 365(온라인 및 온-프레미스)에서 계속 지원됩니다. 모든 클라이언트에 표시될 수 있는 구성 요소의 경우 Silverlight 대신 HTML5와 함께 HTML 웹 리소스를 사용하는 것이 좋습니다.

HTML5는 Silverlight와 Flash와 같은 웹 플러그 인 이상으로 웹에 대해 우선적인 클라이언트 기술입니다. HTML5는 임의의 장치(PC, 태블릿, 스마트폰 등)에서 사용할 수 있으며 JavaScript(및 jQuery와 같은 많은 강력한 JavaScript 라이브러리)와 CSS를 많이 사용합니다.

Microsoft Dynamics 365(온라인 및 온-프레미스)은 Silverlight 4.0 웹 리소스를 엔터티 양식에 추가할 수 있습니다. 해당 버전에 구성된 호스팅 <object> 요소를 사용하여 Silverlight 5.0 웹 리소스를 HTML 웹 리소스 내에 표시할 수 있습니다.

참고

  • Microsoft Silverlight 웹 리소스는 64비트 버전의 Microsoft Office Outlook에서는 볼 수 없습니다.

  • 엔터티 양식 또는 차트 외부에 Silverlight 웹 리소스를 표시하려면 Silverlight 웹 리소스의 호스트 페이지로 사용할 HTML 웹 리소스를 만듭니다. 그런 다음 $webresource: 지시문을 사용하여 HTML 웹 리소스를 엽니다.

이 항목의 내용

Silverlight 웹 리소스 만들기

컨텍스트 데이터 액세스

양식에서 포함된 Silverlight 웹 리소스로 데이터 전달

Silverlight 웹 리소스 작성 및 테스트

Silverlight 웹 리소스 디버깅

Silverlight 웹 리소스 만들기

Silverlight 웹 리소스는 이름을 입력하고, 이름을 표시하고, 유형으로 **Silverlight(XAP)**를 선택하고, .xap 파일을 업로드하여 웹 리소스 양식을 사용하여 쉽게 만듭니다. 웹 리소스를 사용하려면 먼저 게시해야 합니다. 하지만 Silverlight 웹 리소스는 일반적으로 Microsoft Dynamics 365의 상황별 데이터와 어느 정도 상호 작용을 제공하므로 웹 리소스를 만드는 방법을 계획해야 합니다.

컨텍스트 데이터 액세스

웹 리소스 양식에서 미리 보기 단추를 사용하거나 제공된 URL로 이동하면 컨텍스트 정보 없이 Silverlight 응용 프로그램이 일반적인 HTML 페이지에서 호스팅됩니다.Silverlight 응용 프로그램에 상황별 정보가 필요 없을 경우 이 URL을 사용하여 Silverlight 웹 리소스를 볼 수 있습니다.

컨텍스트 정보가 필요할 경우에는 다음 중 하나를 수행해야 합니다.

  1. Silverlight 웹 리소스를 엔터티 양식에 추가합니다.

  2. 컨텍스트 정보를 제공하도록 구성된 HTML 웹 리소스를 사용하여 Silverlight 웹 리소스를 봅니다.

Silverlight 웹 리소스가 엔터티 양식에서 보도록 디자인된 경우 양식에는 상황별 정보에 액세스하는 데 사용할 수 있는 Xrm.Page.context 개체가 있습니다. 자세한 내용은 클라이언트 쪽 컨텍스트(클라이언트 쪽 참조)을 참조하십시오.

Silverlight 응용 프로그램을 양식의 컨텍스트 외부에 표시해야 할 경우 ClientGlobalContext.js.aspx 페이지에 대한 참조를 추가하여 이 컨텍스트 정보를 제공하도록 HTML 웹 리소스를 구성해야 합니다. 이 참조를 추가한 후 Silverlight 응용 프로그램은 엔터티 양식에서 액세스할 는 것과 동일한 방식으로 상황별 정보에 액세스할 수 있습니다. 다음 샘플은 Xrm.Page.context 개체에서 getClientUrl 함수를 호출하는 방법을 보여 줍니다.

private string clientUrl = "";
ScriptObject xrm = (ScriptObject)HtmlPage.Window.GetProperty("Xrm");
ScriptObject page = (ScriptObject)xrm.GetProperty("Page");
ScriptObject pageContext = (ScriptObject)page.GetProperty("context");
clientUrl = (string)pageContext.Invoke("getClientUrl");

양식에서 포함된 Silverlight 웹 리소스로 데이터 전달

Silverlight 웹 리소스를 양식에 추가할 경우 레코드 개체 유형 코드 및 고유 식별자를 매개 변수로 전달합니다. 옵션을 선택할 수 있습니다. 텍스트를 사용자 지정 매개 변수로 입력할 수도 있습니다.

이러한 값은 키/값 쌍의 사전인 InitParams으로 Silverlight 컨트롤에 전달됩니다.

전달된 값은 다음 표에 설명되어 있습니다.

설명

id

레코드의 고유 식별자입니다.

유형

엔터티 유형 코드입니다. 사용자 지정 엔터티의 경우 조직 간에 다를 수 있습니다.

typename

엔터티의 논리적 이름입니다.

orgname

조직의 이름입니다.

userlcid

사용자의 언어 기본 설정을 표시하는 언어 코드입니다.

orglcid

조직의 기본 언어를 표시하는 언어 코드입니다.

데이터

사용자 지정 매개 변수로 입력한 텍스트 값입니다.

이러한 값은 다음 예제에서 구문을 사용하여 런타임에 액세스할 수 있습니다.

string entityTypeName = App.Current.Host.InitParams["typename"];

Silverlight 웹 리소스 작성 및 테스트

Silverlight 웹 리소스가 Microsoft Dynamics 365의 상황별 데이터에 독립적인 경우 일반적으로 하듯이 Silverlight 응용 프로그램을 작성하고 테스트할 수 있습니다..xap 파일을 업로드하여 새 웹 리소스를 만든 후 웹 리소스를 저장하고 게시한 후에 웹 리소스 양식에서 미리 보기 단추를 사용하여 테스트할 수 있습니다.

하지만 Silverlight 응용 프로그램에 Microsoft Dynamics 365 외부에서 완벽하게 시뮬레이션할 수 없는 상황별 데이터 종속성이 있을 가능성이 놓습니다.

양식 또는 컨텍스트 종속성이 포함된 Silverlight 웹 리소스를 만드는 프로세스는 다음과 같습니다.

  1. Silverlight 응용 프로그램 프로젝트를 만듭니다.

    프로젝트에서 웹 응용 프로그램을 만들도록 선택해야 합니다.

  2. Microsoft Dynamics 365에서 상황별 데이터 없이 가능한 한 많은 응용 프로그램을 작성하고 테스트합니다.

  3. .xap 및 .htm 파일을 Silverlight 및 HTML 웹 리소스로 업로드하여 웹 리소스를 만듭니다.

  4. Silverlight 응용 프로그램 프로젝트에서 코드를 작성합니다.

  5. Silverlight 응용 프로그램 프로젝트를 빌드합니다.

  6. 웹 응용 프로그램 프로젝트 ClientBin 폴더에서 .xap 파일의 빌드된 버전을 업로드하여 3단계에서 만든 Silverlight 웹 리소스를 업데이트합니다.

  7. Silverlight 웹 리소스를 테스트하려면:

    • 사용자가 만든 호스트 HTML 웹 리소스의 미리 보기 단추를 사용하여 봅니다.

    • 추가한 엔터티 양식의 컨텍스트에서 봅니다.

      Silverlight 응용 프로그램에 양식 요소 또는 컨텍스트 정보에 대한 종속성이 있을 경우 이 옵션을 사용합니다.

  8. 끝날 때까지 4-7 단계를 반복 합니다.

참고

Silverlight 웹 리소스를 엔터티 양식 외부에 표시하려면(예: 사이트 맵을 편집하여 응용 프로그램 기본 프레임에서) Silverlight 웹 리소스에 대한 호스트로 작동하도록 웹 페이지(HTML) 웹 리소스를 제공해야 합니다.

중요

응용 프로그램에 제공된 텍스트 편집기를 사용하여 Silverlight 웹 리소스를 호스팅하는 페이지에 대해 HTML 원본 코드를 편집하지 마십시오. 텍스트 편집기는 HTML을 변경하고 SilverlightXAP 웹 리소스를 호스팅하는 데 필요한 <object> 요소 정의를 중단합니다. 자세한 내용은 bba8645a-a725-4c4d-a393-bab8ca692482#BKMK_UsingTextEditor을 참조하십시오.

텍스트 편집기를 사용해야 할 경우 <object> 요소에서 data="data:application/x-silverlight-2," 매개 변수를 생략합니다.Silverlight 웹 리소스가 중단되지 않도록 해야 하지만 텍스트 편집기에서 원치 않는 다른 변화가 계속 있을 수 있습니다.

Silverlight 웹 리소스 디버깅

Microsoft Dynamics 365의 상황별 데이터에 의존하지 않는 Silverlight 웹 리소스는 Microsoft Visual Studio에서 디버깅할 수 있습니다. 하지만 Silverlight 웹 리소스에 기능을 수행하기 위해 상황별 데이터가 필요할 경우 다른 절차를 사용해야 합니다.

  1. Silverlight 응용 프로그램을 빌드합니다.

  2. 웹 응용 프로그램 프로젝트 ClientBin 폴더에서 빌드된 버전의 .xap 파일을 업로드합니다.

  3. 사용하도록 설계된 컨텍스트에서 Silverlight 응용 프로그램을 봅니다.

  4. Silverlight 응용 프로그램 프로젝트의 Visual Studio 메뉴에서 디버그를 선택한 후 프로세스에 연결을 선택합니다.

  5. 프로세스에 연결 대화 상자에서 유형 열 값이 Silverlight, x86iexplore.exe 프로세스를 찾습니다.

  6. 프로세스를 선택하고 첨부를 눌러 대화 상자를 닫고 디버깅을 시작합니다.

  7. Silverlight 응용 프로그램 프로젝트에서 중단점을 설정합니다.

  8. 브라우저 창을 새로 고치거나 Silverlight 응용 프로그램에서 코드를 테스트하는 데 필요한 작업을 수행합니다.

참고 항목

액세스 가능한 웹 리소스 만들기
Microsoft Dynamics 365용 웹 리소스
웹 페이지(HTML) 웹 리소스
CSS 웹 리소스
스크립트(JScript) 웹 리소스
데이터(XML) 웹 리소스
이미지(JPG, PNG, GIF, ICO) 웹 리소스
스타일시트(XSL) 웹 리소스

Microsoft Dynamics 365

© 2017 Microsoft. All rights reserved. 저작권 정보