为什么无法使用ID“Server”进行控制

时间:2013-08-28 08:40:28

标签: asp.net

我的页面中有这一行:

<asp:TextBox runat="server" ID="Server" />

我收到了以下错误:

  

编译器错误消息:CS1061:'System.Web.UI.WebControls.TextBox'不包含'ScriptTimeout'的定义,并且没有扩展方法'ScriptTimeout'接受类型'System.Web.UI.WebControls的第一个参数可以找到.TextBox'(您是否缺少using指令或程序集引用?)

     

来源错误:

Line 172:                global::ASP.applications_returndata_releasemanagement_aspx.@__initialized = true;
Line 173:            }
Line 174:            this.Server.ScriptTimeout = 30000000;
Line 175:        }
Line 176:

将ID更改为其他内容后,这很好。

有谁知道为什么你不能使用“服务器”作为控制ID?我搜索过,我找不到任何关于asp.net控件的保留字。

2 个答案:

答案 0 :(得分:5)

Server是任何ASP.Net页面基类中的许多预定义属性之一 - 此列表还包括ResponseRequest等。

通过调用您自己的控件Server,您将覆盖默认属性并呈现无意义的某些.Net调用,在本例中为Server.ScriptTimeout

答案 1 :(得分:5)

这是因为System.Web.UI.Page已经有一个名为Server的字段(当您导航到System.Web.UI.Page的类定义时,可以看到它。)