如何用英语和阿拉伯语做ASP.net网站

Stu*_*ent 4 asp.net multilingual localization c#-4.0

当语言相似时,我可以在asp.net中使用多语言网站(dir = ltr,例如英语,西班牙语,法语).我想知道当一种语言dir = ltr(英语)和其他语言dir = rtl(阿拉伯语)时如何做同样的事情.

我很感激,如果有人可以链接到一个资源,可以显示如何一步一步地执行此操作以及主题一个用于英语和其他用于阿拉伯语..

我正在使用ASP.Net 4.0.

我很感激这方面的任何帮助,如果有人可以提供一个两页的例子,那将是很棒的.

Eni*_*ate 7

你可以这样试试......

使用ASP.NET很容易开发支持多语言的网站.只是一步一步地说.

  • 1.建立一个新的网站
  • 2.从ASP.NET文件夹添加"App_GlobalResources"
  • 3.获取*.resx文件(Strings.resx)
  • 4.输入名称和值
  • 5.为不同的语言制作不同的*.resx文件,并命名为Strings.en-US.resx(美国英语),Strings.fr-FR.resx(法语).制作所需的语言文件
  • 6.现在从网页调用和使用语言的时间您的网站解决方案资源管理器将如下图所示...

在此输入图像描述

Default.aspx 文件看起来像那样

<asp:Label ID=”lblName” runat=”server” Text=”Label”></asp:Label>
<asp:Label ID=”lblDesc” runat=”server” Text=”Label”></asp:Label>
<asp:Label ID=”lblComments” runat=”server” Text=”Label”></asp:Label>
<asp:LinkButton ID=”lnkEnglish” runat=”server” OnClick=”lnkEnglish_Click”>English</asp:LinkButton>
<asp:LinkButton ID=”lnkFrench” runat=”server” OnClick=”lnkFrench_Click”>French</asp:LinkButton>
Run Code Online (Sandbox Code Playgroud)

Default.aspx.cs的代码

private ResourceManager rm;
protected void Page_Load(object sender, EventArgs e)
{
   CultureInfo ci;
   if (!IsPostBack)
   {
       Thread.CurrentThread.CurrentCulture = new CultureInfo(“en-US”);
       rm = new ResourceManager(“Resources.Strings”, Assembly.Load(“App_GlobalResources”));
       ci = Thread.CurrentThread.CurrentCulture;LoadData(ci);
  }
  else
  {
      rm = new ResourceManager(“Resources.Strings”,Assembly.Load(“App_GlobalResources”));
      ci = Thread.CurrentThread.CurrentCulture;LoadData(ci);
  }
}
protected void lnkEnglish_Click(object sender, EventArgs e)
{
    Thread.CurrentThread.CurrentCulture = new CultureInfo(“en-US”);
    LoadData(Thread.CurrentThread.CurrentCulture);
}
protected void lnkFrench_Click(object sender, EventArgs e)
{
    Thread.CurrentThread.CurrentCulture = new CultureInfo(“fr-FR”);
    LoadData(Thread.CurrentThread.CurrentCulture);
}
public void LoadData(CultureInfo ci)
{
   lblName.Text = rm.GetString(“EventName”, ci);
   lblDesc.Text = rm.GetString(“EventDescription”, ci);
   lblComments.Text = rm.GetString(“EventComments”,ci);
}
Run Code Online (Sandbox Code Playgroud)