Session.LCID

The LCID property specifies how dates, times, and currencies are formatted. Locale identifiers (LCID)s are not the same for each geographical locale. Some locales format dates as YY-MM-DD, and some format dates as MM-DD-YYYY. The LCID property is read/write.

Note

The locale group has to be installed on the Web server before its locale identifier can be specified in a Web page or application. Use the Regional and Language Options control panel application to install locale groups.

Syntax

Session.LCID(= LocaleID)

Parameters

  • LocaleID
    An integer that represents the geographical locale. You can find locale integers on MSDN Library.

Applies To

Session Object

Remarks

Setting Session.LCID explicitly affects all responses in a session.

If Session.LCID is not explicitly set in a page, it is implicitly set by the AspLCID metabase property. If the AspLCID metabase property is not set, or set to 0, Session.LCID is set by the default system locale.

Session.LCID can be set multiple times in one Web page and used to format data each time. Some locales need the matching code page to be set to display characters properly. For example, to display dates and times in several locales on one page, the code page must be set to UTF-8 (65001) to show all the characters.

If you set Response.LCID or Session.LCID explicitly, do so before displaying formatted output. Setting Session.LCID changes the locale for both the ASP application and the scripting engine. Using the VBScript function setLocale only changes the locale for the scripting engine.

If the locale of your Web page matches the system defaults of the Web client, you do not need to set a locale in your Web page. However, setting the value is recommended.

If the locale is set in a page, and the code page is set to display the characters properly, Response.Charset should also be set. The code page value specifies to IIS how to encode the data when building the response, and the charset value specifies to the browser how to decode the data when displaying the response. The CharsetName of Response.Charset must match the code page value, or mixed characters are displayed in the browser. Lists of CharsetNames and matching code page values can be found on MSDN Web Workshop under the columns for Preferred Charset Label and FamilyCodePage.

If you are writing and testing Web pages that use different locales, code pages, and character sets (for example, if you are creating a multilingual Web site), remember that your test client computer must have the language packs installed for each language you want to display. You can install language packs from Regional and Language Options in the Control Panel.

Example Code

The following example demonstrates setting the locale to British English and using the VBScript FormatCurrency method to display the value 125 as currency with the ? symbol:

<% 
  Session.LCID = 2057 
  Dim curNumb 
  curNumb = FormatCurrency(125) 
  Response.Write (curNumb) 
> 

Requirements

Client: Requires Windows XP Professional, Windows 2000 Professional, or Windows NT Workstation 4.0.

Server: Requires Windows Server 2003, Windows 2000 Server, or Windows NT Server 4.0.

Product: IIS

See Also