在做CRM的時候,帳戶登入介面的檔案叫Login.aspx,後台代碼為Login.aspx.cs
在VS.NET
2005下測試通過,可發布後,在IIS下運行,則有如下錯誤提示。
===============================================================================
Description:
An error occurred during the compilation of a resource required to
service this request. Please review the following specific error details and
modify your source code appropriately.
Compiler Error Message:
CS0030: Cannot convert type 'ASP.login_aspx' to
'System.Web.UI.WebControls.Login'
Source Error:
| |
Line 114: public login_aspx() {Line 115: string[] dependencies;Line 116: ((Login)(this)).AppRelativeVirtualPath = "~/Login.aspx";Line 117: if ((global::ASP.login_aspx.@__initialized == false)) {Line 118: global::ASP.login_aspx.@__stringResource = this.ReadStringResource();
|
Source File:
c:/WINNT/Microsoft.NET/Framework/v2.0.50727/Temporary ASP.NET
Files/root/21f002dd/13ab9d48/App_Web_login.aspx.cdcab7d2.vqjr2cxo.0.cs
Line: 116
Compiler Warning
Messages:
Server Error in '/' Application.
Compilation Error
Warning: CS0108:
'ASP.login_aspx.Profile' hides inherited member 'Login.Profile'. Use the new
keyword if hiding was intended.
Source
Error:
Warning: CS0108:
'ASP.login_aspx.ApplicationInstance' hides inherited member
'Login.ApplicationInstance'. Use the new keyword if hiding was
intended.
Source
Error:
Show Detailed Compiler Output:
Show Complete Compilation Source:
Version Information: Microsoft
.NET Framework Version:2.0.50727.42; ASP.NET Version:2.0.50727.42
===========================================================================
這是因為.NET Framework
2.0 版中新增Login類.而我們又增加Login.aspx,就會有衝突。
解決法辦:
把原來這個
public partial
class Login :
System.Web.UI.Page
{
...
}
改為別的,如
public partial
class AccountLogin :
System.Web.UI.Page
{
...
}
aspx檔案裡的也要改動,如下:
<%@ Page
Language="C#" AutoEventWireup="true" CodeFile="Login.aspx.cs" Inherits="Login" Culture="auto" UICulture="auto"
%>
<%@ Page
Language="C#" AutoEventWireup="true" CodeFile="Login.aspx.cs" Inherits="AccountLogin" Culture="auto" UICulture="auto"
%>
再試試就沒問題了。