我正在使用Visual Studio 2008開發的舊.NET Web應用程序的支持。但是,我正在使用Visual Web Developer 2010 Express。我已經直接從上一個工作版本加載項目代碼作爲Web應用程序。所有內容都會編譯並加載安裝程序以定位.NET Framework 3.5版。錯誤在Visual Web Developer 2010 Express中運行「正在工作」的Web應用程序
然而,當調試,第一頁要求在「編譯錯誤」的結果與消息
「* CS1061:‘ASP.site_master’不包含‘LinkButton2_Click’,沒有擴展方法「的定義LinkButton2_Click '可以找到'接受'ASP.site_master'類型的第一個參數(你是否缺少using指令或程序集引用?)*「。
下面是相關的代碼細節:
從的Site.Master:
<%@ Master Language="C#" AutoEventWireup="true" CodeBehind="Site.Master.cs" %>
...
<asp:LoginView ID="LoginView1" runat="server" >
<AnonymousTemplate>
<asp:LinkButton ID="LinkButton2" runat="server" Click="LinkButton2_Click"> Login
</asp:LinkButton>
</AnonymousTemplate>
從Site.Master.cs:
public partial class Site : BaseMasterPage // BaseMasterPage is subclass of System.Web.UI.MasterPage
...
public void LinkButton2_Click(object sender, EventArgs e)
{
Response.Redirect("/Login.aspx?ReturnURL="+ Request.Url.AbsolutePath);
}
顯然代碼定義,也沒有明顯的錯別字。
我主要是Java開發人員,但對.NET有相當的經驗。然而,這個問題讓我難以理解,所以我需要一些幫助來瀏覽它。我已經通過谷歌廣泛研究它,並且這種類型的問題已被多次報道,包括Stack Overflow。但是,以前的報告所提供的決議都沒有幫助我解決它。這是非常令人費解的,因爲代碼清晰地工作,因爲它目前正在生產中運行。它似乎是Visual Studio 2008和Visual Web Developer 2010 Express之間的版本問題。
你仍然有.csproj的文件的原始版本,所以你可以對一個做你的差異當前.csproj?我懷疑有些零件丟失了,所以新編譯的版本不起作用。 – Filburt
您已經使用visual studio的發佈命令安裝了該網站?在線網站在根文件夾上有一個bin目錄?在這個目錄中有一個或多個dll文件? – bdn02