65.9K
CodeProject 正在变化。 阅读更多。
Home

SQL Server 文化映射与 .NET Framework

starIconstarIcon
emptyStarIcon
starIcon
emptyStarIconemptyStarIcon

2.54/5 (4投票s)

2013年5月19日

CPOL
viewsIcon

22210

如何在 .NET Framework 中进行 SQL Server 文化映射

引言

这是一个小技巧,解释了如何在 .NET Framework 中映射 SQL Server 文化信息。

这里,我创建了一个类,其中包含 SQL Server 2012 版本中所有可用文化的关键详细信息。

class sqlculturemapping
{
    public string FullName { get; set; }
    public string Alias { get; set; }
    public string LCID { get; set; }
    public string specificulture { get; set; }
 
    public List<sqlculturemapping> getSqlMappings()
    { 
        List<sqlculturemapping> obj = new List<sqlculturemapping>()
        {
            new sqlculturemapping {FullName="us_english", 
            Alias="English", LCID="1033", specificulture="en-US"},
            new sqlculturemapping {FullName="Deutsch", 
            Alias="German", LCID="1031", specificulture="de-DE"},
            new sqlculturemapping {FullName="Français", 
            Alias="French", LCID="1036", specificulture="fr-FR"},
            new sqlculturemapping {FullName="日本語", 
            Alias="Japanese", LCID="1041", specificulture="ja-JP"},
            new sqlculturemapping {FullName="Dansk", 
            Alias="Danish", LCID="1030", specificulture="da-DK"},
            new sqlculturemapping {FullName="Español", 
            Alias="Spanish", LCID="3082", specificulture="es-ES"},
            new sqlculturemapping {FullName="Italiano", 
            Alias="Italian", LCID="1040", specificulture="it-IT"},
            new sqlculturemapping {FullName="Nederlands", 
            Alias="Dutch", LCID="1043", specificulture="nl-NL"},
            new sqlculturemapping {FullName="Norsk", 
            Alias="Norwegian", LCID="2068", specificulture="nn-NO"},
            new sqlculturemapping {FullName="Português", 
            Alias="Portuguese", LCID="2070", specificulture="pt-PT"},
            new sqlculturemapping {FullName="Suomi", 
            Alias="Finnish", LCID="1035", specificulture="fi"},
            new sqlculturemapping {FullName="Svenska", 
            Alias="Swedish", LCID="1053", specificulture="sv-SE"},
            new sqlculturemapping {FullName="čeština", 
            Alias="Czech", LCID="1029", specificulture="Cs-CZ"},
            new sqlculturemapping {FullName="magyar", 
            Alias="Hungarian", LCID="1038", specificulture="Hu-HU"},
            new sqlculturemapping {FullName="polski", 
            Alias="Polish", LCID="1045", specificulture="Pl-PL"},
            new sqlculturemapping {FullName="română", 
            Alias="Romanian", LCID="1048", specificulture="Ro-RO"},
            new sqlculturemapping {FullName="hrvatski", 
            Alias="Croatian", LCID="1050", specificulture="hr-HR"},
            new sqlculturemapping {FullName="slovenčina", 
            Alias="Slovak", LCID="1051", specificulture="Sk-SK"},
            new sqlculturemapping {FullName="slovenski", 
            Alias="Slovenian", LCID="1060", specificulture="Sl-SI"},
            new sqlculturemapping {FullName="ελληνικά", 
            Alias="Greek", LCID="1032", specificulture="El-GR"},
            new sqlculturemapping {FullName="български", 
            Alias="Bulgarian", LCID="1026", specificulture="bg-BG"},
            new sqlculturemapping {FullName="русский", 
            Alias="Russian", LCID="1049", specificulture="Ru-RU"},
            new sqlculturemapping {FullName="Türkçe", 
            Alias="Turkish", LCID="1055", specificulture="Tr-TR"},
            new sqlculturemapping {FullName="British", 
            Alias="British English", LCID="2057", specificulture="en-GB"},
            new sqlculturemapping {FullName="eesti", 
            Alias="Estonian", LCID="1061", specificulture="Et-EE"},
            new sqlculturemapping {FullName="latviešu", 
            Alias="Latvian", LCID="1062", specificulture="lv-LV"},
            new sqlculturemapping {FullName="lietuvių", 
            Alias="Lithuanian", LCID="1063", specificulture="lt-LT"},
            new sqlculturemapping {FullName="Português (Brasil)", 
            Alias="Brazilian", LCID="1046", specificulture="pt-BR"},
            new sqlculturemapping {FullName="繁體中文", 
            Alias="Traditional Chinese", LCID="1028", specificulture="zh-TW"},
            new sqlculturemapping {FullName="한국어", 
            Alias="Korean", LCID="1042", specificulture="Ko-KR"},
            new sqlculturemapping {FullName="简体中文", 
            Alias="Simplified Chinese", LCID="2052", specificulture="zh-CN"},
            new sqlculturemapping {FullName="Arabic", 
            Alias="Arabic", LCID="1025", specificulture="ar-SA"},
            new sqlculturemapping {FullName="ไทย", 
            Alias="Thai", LCID="1054", specificulture="Th-TH"}
        };
 
        return obj;
    }
} 

如果您查看上面的定义,我创建了一个 List<sqlculturemapping>,其中逐一添加了所有信息。我们可以使用以下代码,通过文化对象的 LCID 属性来获取 SQL Server 映射。

CultureInfo culture = new CultureInfo(cultureCode);
                sqlculturemapping obj = new sqlculturemapping().getSqlMappings().Where
                (c => c.LCID == culture.LCID.ToString()).FirstOrDefault(); 

您可能感兴趣阅读 .NET Framework 文化与特定格式以及与 SQL Server 语言的映射。别忘了分享您的反馈和投票。

历史

  • 2013年5月19日:初始版本
© . All rights reserved.