asp代码如下:
| <%@ Page Language="C#" MasterPageFile="~/DefaultMaster.master" AutoEventWireup="true" EnableEventValidation="false" CodeFile="Login.aspx.cs" Inherits="Login" Title="Untitled Page" %> |
| <asp:Content ID="Content1" ContentPlaceHolderID="mainContentPlaceholder" runat="Server"> |
| <asp:Login ID="LoginMain" runat="server" CreateUserText="<%$ Resources:GResource, CreateUser %>" CreateUserUrl="User/CreateUser.aspx" LoginButtonImageUrl="Images/Login.gif" OnLoggedIn="LoginMain_LoggedIn" PasswordRecoveryText="<%$ Resources:GResource, ForgottenPassword %>" PasswordRecoveryUrl="User/EMailForgottenPassword.aspx" RememberMeSet="True"> |
| </asp:Login> |
| </asp:Content> |
错误代码如下:
| “/”应用程序中的服务器错误。 |
| -------------------------------------------------------------------------------- |
| 编译错误 |
| 说明: 在编译向该请求提供服务所需资源的过程中出现错误。请检查下列特定错误详细信息并适当地修改源代码。 |
| 编译器错误信息: CS0030: Cannot convert type 'ASP.login_aspx' to 'System.Web.UI.WebControls.Login' |
| 源错误: |
| 行 118: public login_aspx() { |
| 行 119: string[] dependencies; |
| 行 120: ((Login)(this)).AppRelativeVirtualPath = "~/Login.aspx"; |
| 行 121: if ((global::ASP.login_aspx.@__initialized == false)) { |
| 行 122: dependencies = new string[5]; |
| 源文件: c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\188f28c7\60ce8620\App_Web_login.aspx.cdcab7d2.mnld6pv-.0.cs 行: 120 |
| 编译器警告消息: |
| 警告: CS0108: 'ASP.login_aspx.Profile' hides inherited member 'Login.Profile'. Use the new keyword if hiding was intended. |
| 源错误: |
| c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\188f28c7\60ce8620\App_Web_login.aspx.cdcab7d2.mnld6pv-.0.cs |
| 行 132: } |
| 行 133: |
| 行 134: protected System.Web.Profile.DefaultProfile Profile { |
| 行 135: get { |
| 行 136: return ((System.Web.Profile.DefaultProfile)(this.Context.Profile)); |
| 警告: CS0108: 'ASP.login_aspx.ApplicationInstance' hides inherited member 'Login.ApplicationInstance'. Use the new keyword if hiding was intended. |
| 源错误: |
| c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\188f28c7\60ce8620\App_Web_login.aspx.cdcab7d2.mnld6pv-.0.cs |
| 行 138: } |
| 行 139: |
| 行 140: protected System.Web.HttpApplication ApplicationInstance { |
| 行 141: get { |
| 行 142: return ((System.Web.HttpApplication)(this.Context.ApplicationInstance)); |
| 显示详细的编译器输出: |
| c:\windows\system32\inetsrv> "C:\Program Files\LINQ Preview\Bin\csc.exe" /noconfig /fullpaths @"C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\188f28c7\60ce8620\wa1twmhp.cmdline" |
| Microsoft (R) Visual C# 2005 Compiler version 8.00.50916 |
| for Microsoft (R) Windows (R) 2005 Framework version 2.0.50727 |
| Copyright (C) Microsoft Corporation 2001-2005. All rights reserved. |
| c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\188f28c7\60ce8620\App_Web_login.aspx.cdcab7d2.mnld6pv-.0.cs(134,53): warning CS0108: 'ASP.login_aspx.Profile' hides inherited member 'Login.Profile'. Use the new keyword if hiding was intended. |
| c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\188f28c7\60ce8620\assembly\dl3\84cfb6d2\306c3f3e_cfe1c601\WITWeb_Deploy.DLL: (Location of symbol related to previous warning) |
| c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\188f28c7\60ce8620\App_Web_login.aspx.cdcab7d2.mnld6pv-.0.cs(140,46): warning CS0108: 'ASP.login_aspx.ApplicationInstance' hides inherited member 'Login.ApplicationInstance'. Use the new keyword if hiding was intended. |
| c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\188f28c7\60ce8620\assembly\dl3\84cfb6d2\306c3f3e_cfe1c601\WITWeb_Deploy.DLL: (Location of symbol related to previous warning) |
| c:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\188f28c7\60ce8620\App_Web_login.aspx.cdcab7d2.mnld6pv-.0.cs(120,14): error CS0030: Cannot convert type 'ASP.login_aspx' to 'System.Web.UI.WebControls.Login' |
| 显示完整的编译源: |
| 行 1: #pragma checksum "C:\WIT\WITWeb\Login.aspx" "{406ea660-64cf-4c82-b6f0-42d48172a799}" "B44F354557695C8AD78BB899D68B71B5" |
| 行 2: //------------------------------------------------------------------------------ |
| 行 3: // <auto-generated> |
| 行 4: // This code was generated by a tool. |
| 行 5: // Runtime Version:2.0.50727.42 |
| 行 6: // |
| 行 7: // Changes to this file may cause incorrect behavior and will be lost if |
| 行 8: // the code is regenerated. |
| 行 9: // </auto-generated> |
| 行 10: //------------------------------------------------------------------------------ |
| 行 11: |
| 行 12: namespace ASP { |
| 行 13: |
| 行 14: #line 319 "C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Config\web.config" |
| 行 15: using System.Web.Security; |
| 行 16: |
| 行 17: #line default |
| 行 18: #line hidden |
| 行 19: |
| 行 20: #line 316 "C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Config\web.config" |
| 行 21: using System.Web; |
| 行 22: |
| 行 23: #line default |
| 行 24: #line hidden |
| 行 25: |
| 行 26: #line 318 "C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Config\web.config" |
| 行 27: using System.Web.SessionState; |
| 行 28: |
| 行 29: #line default |
| 行 30: #line hidden |
| 行 31: |
| 行 32: #line 314 "C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Config\web.config" |
| 行 33: using System.Text; |
| 行 34: |
| 行 35: #line default |
| 行 36: #line hidden |
| 行 37: |
| 行 38: #line 3 "C:\WIT\WITWeb\Login.aspx" |
| 行 39: using System.Web.UI.WebControls; |
| 行 40: |
| 行 41: #line default |
| 行 42: #line hidden |
| 行 43: |
| 行 44: #line 320 "C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Config\web.config" |
| 行 45: using System.Web.Profile; |
| 行 46: |
| 行 47: #line default |
| 行 48: #line hidden |
| 行 49: |
| 行 50: #line 311 "C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Config\web.config" |
| 行 51: using System.Collections; |
| 行 52: |
| 行 53: #line default |
| 行 54: #line hidden |
| 行 55: |
| 行 56: #line 3 "C:\WIT\WITWeb\Login.aspx" |
| 行 57: using System.Web.UI.WebControls.WebParts; |
| 行 58: |
| 行 59: #line default |
| 行 60: #line hidden |
| 行 61: |
| 行 62: #line 313 "C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Config\web.config" |
| 行 63: using System.Configuration; |
| 行 64: |
| 行 65: #line default |
| 行 66: #line hidden |
| 行 67: |
| 行 68: #line 310 "C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Config\web.config" |
| 行 69: using System; |
| 行 70: |
| 行 71: #line default |
| 行 72: #line hidden |
| 行 73: |
| 行 74: #line 1 "C:\WIT\WITWeb\Login.aspx" |
| 行 75: using ASP; |
| 行 76: |
| 行 77: #line default |
| 行 78: #line hidden |
| 行 79: |
| 行 80: #line 317 "C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Config\web.config" |
| 行 81: using System.Web.Caching; |
| 行 82: |
| 行 83: #line default |
| 行 84: #line hidden |
| 行 85: |
| 行 86: #line 321 "C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Config\web.config" |
| 行 87: using System.Web.UI; |
| 行 88: |
| 行 89: #line default |
| 行 90: #line hidden |
| 行 91: |
| 行 92: #line 312 "C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Config\web.config" |
| 行 93: using System.Collections.Specialized; |
| 行 94: |
| 行 95: #line default |
| 行 96: #line hidden |
| 行 97: |
| 行 98: #line 315 "C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Config\web.config" |
| 行 99: using System.Text.RegularExpressions; |
| 行 100: |
| 行 101: #line default |
| 行 102: #line hidden |
| 行 103: |
| 行 104: #line 324 "C:\WINDOWS\Microsoft.NET\Framework\v2.0.50727\Config\web.config" |
| 行 105: using System.Web.UI.HtmlControls; |
| 行 106: |
| 行 107: #line default |
| 行 108: #line hidden |
| 行 109: |
| 行 110: |
| 行 111: [System.Runtime.CompilerServices.CompilerGlobalScopeAttribute()] |
| 行 112: public class login_aspx : global::Login, System.Web.SessionState.IRequiresSessionState, System.Web.IHttpHandler { |
| 行 113: |
| 行 114: private static bool @__initialized; |
| 行 115: |
| 行 116: private static object @__fileDependencies; |
| 行 117: |
| 行 118: public login_aspx() { |
| 行 119: string[] dependencies; |
| 行 120: ((Login)(this)).AppRelativeVirtualPath = "~/Login.aspx"; |
| 行 121: if ((global::ASP.login_aspx.@__initialized == false)) { |
| 行 122: dependencies = new string[5]; |
| 行 123: dependencies[0] = "~/Login.aspx"; |
| 行 124: dependencies[1] = "~/DefaultMaster.master"; |
| 行 125: dependencies[2] = "~/UserControls/CollapsibleContent.ascx"; |
| 行 126: dependencies[3] = "~/UserControls/HtmlEditorWrapper.ascx"; |
| 行 127: dependencies[4] = "~/UserControls/ProjectAreaTextBox.ascx"; |
| 行 128: global::ASP.login_aspx.@__fileDependencies = this.GetWrappedFileDependencies(dependencies); |
| 行 129: global::ASP.login_aspx.@__initialized = true; |
| 行 130: } |
| 行 131: this.Server.ScriptTimeout = 30000000; |
| 行 132: } |
| 行 133: |
| 行 134: protected System.Web.Profile.DefaultProfile Profile { |
| 行 135: get { |
| 行 136: return ((System.Web.Profile.DefaultProfile)(this.Context.Profile)); |
| 行 137: } |
| 行 138: } |
| 行 139: |
| 行 140: protected System.Web.HttpApplication ApplicationInstance { |
| 行 141: get { |
| 行 142: return ((System.Web.HttpApplication)(this.Context.ApplicationInstance)); |
| 行 143: } |
| 行 144: } |
| 行 145: |
| 行 146: private global::System.Web.UI.WebControls.Login @__BuildControlLoginMain() { |
| 行 147: global::System.Web.UI.WebControls.Login @__ctrl; |
| 行 148: |
| 行 149: #line 6 "C:\WIT\WITWeb\Login.aspx" |
| 行 150: @__ctrl = new global::System.Web.UI.WebControls.Login(); |
| 行 151: |
| 行 152: #line default |
| 行 153: #line hidden |
| 行 154: this.LoginMain = @__ctrl; |
| 行 155: @__ctrl.TemplateControl = this; |
| 行 156: @__ctrl.ApplyStyleSheetSkin(this); |
| 行 157: |
| 行 158: #line 6 "C:\WIT\WITWeb\Login.aspx" |
| 行 159: @__ctrl.ID = "LoginMain"; |
| 行 160: |
| 行 161: #line default |
| 行 162: #line hidden |
| 行 163: |
| 行 164: #line 6 "C:\WIT\WITWeb\Login.aspx" |
| 行 165: @__ctrl.CreateUserUrl = "User/CreateUser.aspx"; |
| 行 166: |
| 行 167: #line default |
| 行 168: #line hidden |
| 行 169: |
| 行 170: #line 6 "C:\WIT\WITWeb\Login.aspx" |
| 行 171: @__ctrl.LoginButtonImageUrl = "Images/Login.gif"; |
| 行 172: |
| 行 173: #line default |
| 行 174: #line hidden |
| 行 175: |
| 行 176: #line 6 "C:\WIT\WITWeb\Login.aspx" |
| 行 177: @__ctrl.PasswordRecoveryUrl = "User/EMailForgottenPassword.aspx"; |
| 行 178: |
| 行 179: #line default |
| 行 180: #line hidden |
| 行 181: |
| 行 182: #line 6 "C:\WIT\WITWeb\Login.aspx" |
| 行 183: @__ctrl.RememberMeSet = true; |
| 行 184: |
| 行 185: #line default |
| 行 186: #line hidden |
| 行 187: @__ctrl.CreateUserText = System.Convert.ToString(this.GetGlobalResourceObject("Resource", "CreateUser"), System.Globalization.CultureInfo.CurrentCulture); |
| 行 188: @__ctrl.PasswordRecoveryText = System.Convert.ToString(this.GetGlobalResourceObject("Resource", "ForgottenPassword"), System.Globalization.CultureInfo.CurrentCulture); |
| 行 189: |
| 行 190: #line 6 "C:\WIT\WITWeb\Login.aspx" |
| 行 191: @__ctrl.LoggedIn -= new System.EventHandler(this.LoginMain_LoggedIn); |
| 行 192: |
| 行 193: #line default |
| 行 194: #line hidden |
| 行 195: |
| 行 196: #line 6 "C:\WIT\WITWeb\Login.aspx" |
| 行 197: @__ctrl.LoggedIn += new System.EventHandler(this.LoginMain_LoggedIn); |
| 行 198: |
| 行 199: #line default |
| 行 200: #line hidden |
| 行 201: return @__ctrl; |
| 行 202: } |
| 行 203: |
| 行 204: private void @__BuildControlContent1(System.Web.UI.Control @__ctrl) { |
| 行 205: System.Web.UI.IParserAccessor @__parser = ((System.Web.UI.IParserAccessor)(@__ctrl)); |
| 行 206: |
| 行 207: #line 3 "C:\WIT\WITWeb\Login.aspx" |
| 行 208: @__parser.AddParsedSubObject(new System.Web.UI.LiteralControl("\r\n \r\n ")); |
| 行 209: |
| 行 210: #line default |
| 行 211: #line hidden |
| 行 212: global::System.Web.UI.WebControls.Login @__ctrl1; |
| 行 213: |
| 行 214: #line 3 "C:\WIT\WITWeb\Login.aspx" |
| 行 215: @__ctrl1 = this.@__BuildControlLoginMain(); |
| 行 216: |
| 行 217: #line default |
| 行 218: #line hidden |
| 行 219: |
| 行 220: #line 3 "C:\WIT\WITWeb\Login.aspx" |
| 行 221: @__parser.AddParsedSubObject(@__ctrl1); |
| 行 222: |
| 行 223: #line default |
| 行 224: #line hidden |
| 行 225: |
| 行 226: #line 3 "C:\WIT\WITWeb\Login.aspx" |
| 行 227: @__parser.AddParsedSubObject(new System.Web.UI.LiteralControl("\r\n")); |
| 行 228: |
| 行 229: #line default |
| 行 230: #line hidden |
| 行 231: } |
| 行 232: |
| 行 233: private void @__BuildControlTree(login_aspx @__ctrl) { |
| 行 234: |
| 行 235: #line 1 "C:\WIT\WITWeb\Login.aspx" |
| 行 236: @__ctrl.MasterPageFile = "~/DefaultMaster.master"; |
| 行 237: |
| 行 238: #line default |
| 行 239: #line hidden |
| 行 240: |
| 行 241: #line 1 "C:\WIT\WITWeb\Login.aspx" |
| 行 242: @__ctrl.EnableEventValidation = false; |
| 行 243: |
| 行 244: #line default |
| 行 245: #line hidden |
| 行 246: |
| 行 247: #line 1 "C:\WIT\WITWeb\Login.aspx" |
| 行 248: @__ctrl.Title = "Untitled Page"; |
| 行 249: |
| 行 250: #line default |
| 行 251: #line hidden |
| 行 252: |
| 行 253: #line 1 "C:\WIT\WITWeb\Login.aspx" |
| 行 254: this.InitializeCulture(); |
| 行 255: |
| 行 256: #line default |
| 行 257: #line hidden |
| 行 258: |
| 行 259: #line 3 "C:\WIT\WITWeb\Login.aspx" |
| 行 260: this.AddContentTemplate("mainContentPlaceholder", new System.Web.UI.CompiledTemplateBuilder(new System.Web.UI.BuildTemplateMethod(this.@__BuildControlContent1))); |
| 行 261: |
| 行 262: #line default |
| 行 263: #line hidden |
| 行 264: System.Web.UI.IParserAccessor @__parser = ((System.Web.UI.IParserAccessor)(@__ctrl)); |
| 行 265: |
| 行 266: #line 1 "C:\WIT\WITWeb\Login.aspx" |
| 行 267: @__parser.AddParsedSubObject(new System.Web.UI.LiteralControl("\r\n")); |
| 行 268: |
| 行 269: #line default |
| 行 270: #line hidden |
| 行 271: } |
| 行 272: |
| 行 273: protected override void FrameworkInitialize() { |
| 行 274: base.FrameworkInitialize(); |
| 行 275: this.@__BuildControlTree(this); |
| 行 276: this.AddWrappedFileDependencies(global::ASP.login_aspx.@__fileDependencies); |
| 行 277: } |
| 行 278: |
| 行 279: public override int GetTypeHashCode() { |
| 行 280: return 1734294563; |
| 行 281: } |
| 行 282: |
| 行 283: public override void ProcessRequest(System.Web.HttpContext context) { |
| 行 284: base.ProcessRequest(context); |
| 行 285: } |
| 行 286: } |
| 行 287: } |
| 行 288: |
| -------------------------------------------------------------------------------- |
| 版本信息: Microsoft .NET Framework 版本:2.0.50727.42; ASP.NET 版本:2.0.50727.62 |
我在这里找到了答案 其原因就是Inherits="Login" asp:Login 中的标记控件与页面基类名称相同,当我们在开发时编译与预编译不同造成
解决方法一是更改页面基类名程, 二是为页面基类增加命名空间 我采用的是增加命名空间的解决方法代码如下:
| <%@ Page Language="C#" MasterPageFile="~/DefaultMaster.master" AutoEventWireup="true" EnableEventValidation="false" CodeFile="Login.aspx.cs" Inherits="AIO.WITWeb.Login" Title="Untitled Page" %> |
| <asp:Content ID="Content1" ContentPlaceHolderID="mainContentPlaceholder" runat="Server"> |
| <asp:Login ID="LoginMain" runat="server" CreateUserText="<%$ Resources:GResource, CreateUser %>" CreateUserUrl="User/CreateUser.aspx" LoginButtonImageUrl="Images/Login.gif" OnLoggedIn="LoginMain_LoggedIn" PasswordRecoveryText="<%$ Resources:GResource, ForgottenPassword %>" PasswordRecoveryUrl="User/EMailForgottenPassword.aspx" RememberMeSet="True"> |
| </asp:Login> |
| </asp:Content> |
只改动了命名空间Inherits="AIO.WITWeb.Login" 当然需要修改cs文件略
浙公网安备 33010602011771号