分手快乐 发表于 2015-1-16 22:39:26

ASP.NET网页编程之ASP.Net 2.0中完成多言语界面的办法

有时也搞不懂应该学那种;主要看你以后去的那个公司是使用哪种了。就像王千祥的课上说的:企业应用现在主要就三层(其实也差不多就是MVC):表示层(主要使用html写的,很简单)、业务逻辑层(主要就是应用服务器的)。最后就是数据层(其实就是学习数据库)asp.net  1.跟之前一样做界面,只是注重,把一切必要有多言语界面的笔墨都用label来做

  2.做完今后,在SolutionExplorer里选中这个文件,选Tools->GenerateLocalResource

  3.你会发明天生了一个目次,App_LocalResources;这个目次里多了一个resx的文件。好比你的aspx文件是default.aspx,它就会天生一个叫做default.aspx.resx的文件。

  4.翻开这个文件看看,本来在label中的那些笔墨都跑到这里来了

  5.翻开本来的aspx文件看看source,会发明源码变了:

<%@PageLanguage="VB"MasterPageFile="~/MasterPage.master"AutoEventWireup="false"CodeFile="Default.aspx.vb"Inherits="Default2"title="UntitledPage"Culture="auto"meta:resourcekey="PageResource1"UICulture="auto"%>

…………

<asp:LocalizeID="Localize1"runat="server"meta:resourcekey="Localize1Resource1"></asp:Localize>

*********************************************************************
  假如是其他的控件上的笔墨,基础上也是会主动天生的。好比button和gridview的:

<asp:ButtonID="Button1"runat="server"meta:resourcekey="Button1Resource1"Text="Button1"/><br/>
<asp:GridViewID="GridView1"runat="server"meta:resourcekey="GridView1Resource1">
<Columns>
<asp:BoundFieldHeaderText="Header1"meta:resourcekey="BoundFieldResource1"/>
<asp:BoundFieldHeaderText="Header2"meta:resourcekey="BoundFieldResource2"/>
</Columns>
</asp:GridView>
  天生的resource以下:

  


  *********************************************************************

  6.注重这里:meta:resourcekey="PageResource1"和meta:resourcekey="Localize1Resource1"这就暗示这里的笔墨是从资本中读取的。

  7.OK如今来做另外一种言语的资本文件。很复杂,copyDefault.aspx.resx再paste一下,然后rename为Default.aspx.fr-fr.resx注重fr-fr是你要做的言语的名字。人人假如看dvdrip的话,应当以为这跟字幕文件很像吧?

  8.有人说我怎样晓得谁人言语叫甚么名字呢?很复杂,翻开ie,tools->internetoptions->languages->add,方框两头的就是了。

  9.如今入手下手编纂其他资本的笔墨。翻开Default.aspx.fr-fr.resx,对比着本来的内容,把内里的内容改成法语的。

  10.到此为止,我们就完成了第一阶段。ASP.Net会依据用户的言语偏好来选择显现的言语。把IE里的设置改一下,在我们刚说过的中央改成fr-fr,翻开这一页看看?假如是法语,祝贺你。假如不是,转头重做……

  11.下一步,我们要同意用户选择本人的言语,而不是主动。我们会用cookie存取用户的选择。在Application级别,我们读取这个cookie并设置得当的culture和uiculture。固然,第一次出去的时分,我们仍是要读取扫瞄器的设置,这个能够从Request.UserLanguages中取得。

PrivateSupportedLanguagesAsString()={"en-us","fr-fr"}
PublicConstLANGUAGE_COOKIE_NAMEAsString="UserLanguage"

SubApplication_AcquireRequestState(ByValsenderAsObject,ByValeAsEventArgs)
DimlanguageCookieAsHttpCookie=Request.Cookies(LANGUAGE_COOKIE_NAME)
DimlanguageAsString=String.Empty

If(languageCookieIsNothing)Then
 DimuserLanguagesAsString()=Request.UserLanguages
 DimindexAsInteger
 ForiAsInteger=0TouserLanguages.Length-1
  index=Array.IndexOf(SupportedLanguages,userLanguages(i))
  Ifindex>=0Then
   language=SupportedLanguages(index)
   ExitFor
  EndIf
 Next

 Iflanguage=String.EmptyThen_
  language=SupportedLanguages(0)
  Response.Cookies.Add(NewHttpCookie(LANGUAGE_COOKIE_NAME,language))
 Else
  language=languageCookie.Value
 EndIf

 DimcultureAsCultureInfo=NewCultureInfo(language)
 System.Threading.Thread.CurrentThread.CurrentUICulture=culture
EndSub
  12.然后我们要有一页让用户选择言语,好比我们用两个button来做。在点击这个button以后,我们要设置这个cookie为得当的言语:

ProtectedSubButton2_Click(ByValsenderAsObject,ByValeAsSystem.EventArgs)HandlesButton2.Click
 SetLanguage("fr-fr")
EndSub

ProtectedSubSetLanguage(ByVallanguageAsString)
 Response.Cookies(Global.ASP.global_asax.LANGUAGE_COOKIE_NAME).Value=language
 DimcultureAsCultureInfo=NewCultureInfo(language)
 System.Threading.Thread.CurrentThread.CurrentUICulture=culture
 Server.Transfer(Request.Path)
EndSub
  注重最初的Server.Transfer(Request.Path),这是为了从头读取这一页,如许这一页也会显现新选择的言语。

  13.最初我们要往失落ASP.Net的主动选择。从Default.aspx中往除:

  Culture="auto"UICulture="auto"

  14.翻开来看一看吧!在经过全球个人PC市场占有90%的微软对asp.net不断优化与整合后,asp.net与微软自身平台的动用上更加的高效,加上asp.net在应用上非常容易上手,相信asp.net仍会是最多客户选用的脚本语言,并会在未来几年继续领跑。

若天明 发表于 2015-1-18 05:22:28

在asp.net虚拟主机的服务提供商中,目前首推的是CNNIC的其中一家域名注册机构---时代互联(www.ckuyun.com),他们早在2001年微软刚推出Asp.net时就推出了对应的Asp.net虚拟主机了,经笔者的使用测试,他提供的Asp.net性能非常的稳定,版本也会定期的更新,目前他的

蒙在股里 发表于 2015-1-21 11:04:08

平台无关性是PHP的最大优点,但是在优点的背后,还是有一些小小的缺点的。如果在PHP中不使用ODBC,而用其自带的数据库函数(这样的效率要比使用ODBC高)来连接数据库的话,使用不同的数据库,PHP的函数名不能统一。这样,使得程序的移植变得有些麻烦。不过,作为目前应用最为广泛的一种后台语言,PHP的优点还是异常明显的。

小魔女 发表于 2015-1-30 16:21:40

现在主流的网站开发语言无外乎asp、php、asp.net、jsp等。

仓酷云 发表于 2015-2-6 14:02:00

但是java靠开源打出的一片天地,特别是在微软的垄断下能打开今天的局面还是有它的生命力的。

变相怪杰 发表于 2015-2-16 10:09:00

当然我们在选择Asp.net主机是,除了要考虑服务提供商在版本是否是实时更新以外,机房的环境和配置也是非常重要的,通常选择骨干网的机房,在速度和稳定性上会非常有保证。

深爱那片海 发表于 2015-3-5 03:47:37

asp.net空间的支持有:ASP.NET1.1/虚拟目录/MicrosoftFrontPage2000扩展/CDONTS,同时他的网站上也提供了Asp.net的使用详解和程序源代码,相信对使用ASP.NET编程的程序员来说会非常有用哦!

山那边是海 发表于 2015-3-11 23:15:48

逐步缩小出错代码段的范围,最终确定错误代码的位置。

金色的骷髅 发表于 2015-3-19 16:01:25

逐步缩小出错代码段的范围,最终确定错误代码的位置。
页: [1]
查看完整版本: ASP.NET网页编程之ASP.Net 2.0中完成多言语界面的办法