添加链接
link管理
链接快照平台
  • 输入网页链接,自动生成快照
  • 标签化管理网页链接

今天做了一个最简单的aspx单页程序文件(无.cs后台文件),但却出现了一个让人捉摸不透的问题。

这个aspx单页文件程序很简单,就是直接获取当前时间:

test.aspx

<%
  Response.Write (System.DateTime.Now.ToString());
%>

当http访问该页时,却报错了,提示如下:

编译器错误消息: BC30037: 字符无效。

源错误:

行 1: <%
行 2: Response.Write (System.DateTime.Now.ToString());
行 3: %>

不断修改代码测试发现,如下代码可以运行:

test.aspx

<%
  response.write(now())
%>

令我诧异的是,代码不用区分字母大小写,也不用结束符号( ; ),这个显然是asp语法啊,为什么 aspx 被解析为 asp 呢?

但是,这只是我在本地环境下运行时才出现这样怪异的问题,我把同样的程序文件放到服务器环境上运行时,是能解析正常的——aspx文件的程序使用asp语法会运行报错。

后记

这问题与本地web搭建环境有关,能通过重新搭建网站(另起目录)解决问题。