Как сделать сайт ASP.net на английском и арабском - PullRequest
3 голосов
/ 19 ноября 2011

Я могу сделать многоязычный веб-сайт на asp.net, когда язык похож (dir = ltr, например, английский, испанский, французский).Я хотел бы знать, как сделать то же самое, когда один язык dir = ltr (английский) и другой язык dir = rtl (арабский).

Буду признателен, если кто-то сможет сослаться на ресурс, который может показать, каксделать это шаг за шагом, наряду с темами для английского и другой для арабского ..

Я использую ASP.Net 4.0.

Буду признателен за любую помощь в этой области, и если кто-томогу предоставить мне пример из двух страниц, который был бы великолепен.

1 Ответ

6 голосов
/ 19 ноября 2011

ты можешь попробовать вот так ...

Легко разработать многоязычный веб-сайт с поддержкой ASP.NET. Просто выполните этот шаг за шагом.

  • 1.Займите новый веб-сайт
  • 2.Добавить «App_GlobalResources» из папок ASP.NET
  • 3. Возьмите файл * .resx (Strings.resx)
  • 4.Введите имя и значения
  • 5.Создайте другой файл * .resx для разных языков и назвайте его так Strings.en-US.resx (для американского английского), Strings.fr-FR.resx (для Французский). Создайте столько языковых файлов, сколько вам нужно
  • 6.В настоящее время звоните и пользуйтесь языком с веб-страницы. Ваш веб-сайт Solution Explorer будет выглядеть следующим образом ...

enter image description here

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>

Коды 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);
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...