본문 바로가기

Developer

Sharepoint 2010 Script Resource(다국어) 처리 방법

 

asp.net에서는 aspx 페이지에 아래와 같이 작성하면 script 다국어 처리가 가능합니다.

 

ASPX

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="ScriptsConstants.aspx.cs" Inherits="WebApp.Page.ScriptsConstants" %>

var INFO_SUCCESS = '<%= GetTextResource("ScriptResource", "INFO_SUCCESS")%>';
var INFO_MIGRATION_LIMIT = '<%= GetTextResource("ScriptResource", "INFO_MIGRATION_LIMIT")%>';

 

CS

protected void Page_Load(object sender, EventArgs e)
{
    try
    {
		Response.Clear();
		Response.ContentType = "text/javascript";
		Response.Expires = -1;
		Response.Buffer = true;
    }
    catch (Exception ex)
    {
        throw ex;
    }
}

 

사용 페이지

<script language="javascript" type="text/javascript" src="/Web/Page/ScriptsConstants.aspx"></script>

 

이 부분을 Sharepoint로 변경하도록 하겠습니다.

먼저 Sharepoint에서 리소스 사용 방법입니다.

// ASPX
// Page 상단에 Utilities dll 선언
<%@ Register Tagprefix="Utilities" Namespace="Microsoft.SharePoint.Utilities" Assembly="Microsoft.SharePoint, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %>
<%= SPUtility.GetLocalizedString("$Resources:ResourceData,INFO_SUCCESS", "ResourceData", (uint)System.Globalization.CultureInfo.CurrentUICulture.LCID)%>

// ASPX.CS
string strSuccess = Microsoft.SharePoint.Utilities.SPUtility.GetLocalizedString("$Resources:ResourceData,INFO_SUCCESS", "ResourceData", (uint)System.Globalization.CultureInfo.CurrentUICulture.LCID);

 

등록은 VS 2010으로 진행하도록 하겠습니다.

 

Resource 파일을 등록하기 위해서는 Shareponit resources mapping folder를 추가하고 거기에 등록하여야 합니다.

 

 

 

 

그리고 Resources 파일을 등록합니다.

 

 

그리고 값을 설정하고

 

 

그리고 ScriptResource 로 사용될 응용프로그램 페이지를 등록합니다.

 

 

당연히 Layout 폴더에 넣어야 됩니다.

 

 

그리고 작성은 위에 소스를 참고하시고 적용된 페이지는 아래와 같습니다.

 

 

여기서 중요한 부분이 상단의 Page에 MasterPageFile Property를 삭제하고 위와 같이 작성하여야 합니다.

그리고 asp.net에서 사용하던 방식처럼 script link로 연결하여 사용하시면 됩니다. 

 

이상입니다.


감사합니다.