在编写ASP程序的时候,通常都会用到<!--#include virtual/file="path/filename"-->把一段相对独立的文件代码嵌套到当前页面中来。
使用"file"的时候,等号后面使用的是相对路径。使用"virtual"的时候,等号后面使用的是绝对路径。很多人都不知道virtual这个包含绝对路径。 ......
ASP.NET 4的Web Forms当中,最令人激赏的,则莫过于是URL Routing机制的全面支持。过去在ASP.NET 3.5 SP1当中,Web Forms或多或少就开始支持URL Routing机制,它让我们在网址的呈现以及使用上更加的有弹性。
过去我们在ASP.NET当中,习惯于底下这样的网址呈现方式:
http://myWebSite/EditProduct.aspx?Id=1
但最近几年REST风格的网站(或REST Web服务)兴起,你常常会看到网址的呈现方式变成:
http://myWebSite/Product/Edit/XBOX
上面这样的网址有一些好处,首先,网址可以更明确的表达想要呈现的功能,或是要后端应用程序进行的行为;其次,上面这样的网址由于并非对应到后端某一个实体档案(.aspx.cs),而是透过Routing机制来转派,因此相较过去的网址有着更高的安全性。
也就是说,在这样的架构下,ASP.NET应用程序的网址再也不只是对应到实体档案的路径,而是可用来表达要执行的功能。至于实际执行时要处理的程序代码或呈现结果的网页,也并非一定要是由网址所指向的实体页面。这也让我们在开发应用程序时有更大的弹性,例如一般的部落格网站网址可能是『http://blog/studyhost』,由于blog网站多半都可以开放给多人申请,理所当然的每一个用户都有类似『http://blo ......
一、获取当前文件的路径
1. System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName
获取模块的完整路径,包括文件名。
2. System.Environment.CurrentDirectory
获取和设置当前目录(该进程从中启动的目录)的完全限定目录。
3. System.IO.Directory.GetCurrentDirectory()
获取应用程序的当前工作目录。这个不一定是程序从中启动的目录啊,有可能程序放在C:\www里,这个函数有可能返回C:\Documents and Settings\ZYB\,或者C:\Program Files\Adobe\,有时不一定返回什么东东,这是任何应用程序最后一次操作过的目录,比如你用Word打开了E:\doc\my.doc这个文 件,此时执行这个方法就返回了E:\doc了。
4. System.AppDomain.CurrentDomain.BaseDirectory
获取程序的基目录。
5. System.AppDomain.CurrentDomain.SetupInformation.ApplicationBase
获取和设置包括该应用程序的目录的名称。
6. System.Windows.Forms.Application.StartupPath
  ......
今天在做一个无刷新判断公司名称,是否重复的时候,发现一个问题就是通过javascript传到asp.net页面的值是乱码。以前没有发现。因为 以前做测试时,都是用英文字符进行的测试。今天输入汉字后,发现有这种问题。感觉可能是编码的问题。就上网查了一下。找到一些方法,如下:
1.设置web.config文件
<system.web>
<globalization requestEncoding="gb2312" responseEncoding="gb2312" culture="zh-CN" fileEncoding="gb2312" />
</system.web>
2.asp.net对asp.net页面传值
进行传递
string Name = "中文参数";
Response.Redirect("B.aspx?Name="+Server.UrlEncode(Name));
进行接收
string Name = Request.QueryString["Name"];
Response.Write(Server.UrlDecode(Name));
3.javascript对asp.net ......
在一个项目开发中,showdialog弹出对话框时,我之前修改过的数据不会及时更新!
使用禁用URL缓存的方法,解决这个问题
在asp.net页面的后台
if (!IsPostBack)
{
Response.Buffer = true;
Response.ExpiresAbsolute = DateTime.Now.AddDays(-1);
Response.Expires = 0;
Response.CacheControl = "no-cache";
} ......
更新:2007 年 11 月 可以像对 HTML 元素那样,以声明方式向 ASP.NET 网页上的控件添加客户端脚本。或者,如果事件或代码依赖仅在运行时可用的信息,可以通过编程方式向 ASP.NET Web 服务器控件添加客户端脚本事件。 说明: 可以在客户端脚本中通过 ID 引用控件。有关更多信息,请参见 ASP.NET 网页中的客户端脚本。 向按钮添加客户端脚本 onclick 事件需要一个专门过程,本主题后面的内容会对此进行介绍。 说明: 对客户端脚本的支持取决于浏览器。例如,Internet Explorer、Mozilla 和移动设备浏览器可能会对客户端脚本提供不同类型的支持。 以声明方式向 ASP.NET 服务器控件添加客户端事件处理程序 在控件的标记中添加事件属性,例如,onmouseover 或 onkeyup。针对属性值添加要执行的客户端脚本。 说明: 始终都要在属性中的客户端脚本之后添加一个分号 (;)。这是必需的,这样就可以在 ASP.NET 生成控件的客户端脚本(例如,如果控件的 AutoPostBack 属性设置为 true)时首先运行此代码。 控件标记中任何不与控件属性 (property) 对应的属性 (attribute)/值对都会按原样传递给浏览器。 下面的代码示例演示一个包含客户端脚本的 ASP. ......