簡體   English   中英

C# Visual Studio 2010 - “無法加載類型”解析錯誤

[英]C# Visual Studio 2010 - 'Could not load type' Parse error

解析器錯誤消息:無法加載類型“TestProject.Default”。


我已經檢查了我能找到的關於這個問題的所有其他線程。 到目前為止,我還沒有找到適用於我的案例的解決方案。


源錯誤:

Line 1:  <%@ Page Title="Home Page" Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="TestProject.Default" %>
Line 2:  
Line 3:  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">

Source File: /testarea/default.aspx    Line: 1

默認.aspx.cs

using System;
using System.Web;
using System.Web.UI;

namespace TestProject
{
    public partial class Default : System.Web.UI.Page
    {

相關說明

  • /testarea 是服務器上不可編譯文件所在的目錄 /testarea/bin 包含已編譯文件
  • 項目已編譯(使用 Build -> Build TestProject)
  • 調試時在本地運行良好 - 問題僅在發布到 Web 時出現
  • 我不/不能通過 VS 發布(沒有首頁擴展),所以復制文件(使用 Build -> Publish -> File System 后從 PackageTmp 文件夾)
  • 我使用相同的方法將之前的項目放到了網絡上,沒有任何問題。
  • 在所有其他線程和對這個問題的引用中,命名空間不准確、缺乏編譯項目和項目屬性似乎不適用於這種情況(我已經檢查了很多次,所有看起來都是正確的)
  • 項目屬性中的輸出路徑為\bin,與服務器上的位置相同(/testarea/bin)
  • 已嘗試“轉換為 Web 應用程序”,但之前和之后都存在問題
  • 嘗試了無數次構建->清理,然后再次構建,清理然后發布。 沒變。

邊注

我是一名 PHP 開發人員,所以這些奇怪的 .NET / C# 問題很難追蹤並找到邏輯,對我來說尤其困難。 任何建議重新。 如何正確調試 VS C# 應用程序將不勝感激。

這是我在這里的第一個問題。 如果我可以通過更多信息幫助使這更容易,請問。

Line 1行嘗試這一行,而不是你已經擁有的。

<%@ Page Title="Home Page" Language="C#" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="TestProject._Default" %>

我遇到了類似的問題,不同之處在於我有時無法編譯,有時我能夠編譯但在瀏覽器打開時收到錯誤,沒有加載頁面並聲明它無法加載類型 xxxxyyyy .default 我之前所做的是手動導入一些類(將 .cs 文件放到項目標題中),昨天在另一台計算機上運行良好。 現在我在另一台計算機上並收到此錯誤。 一開始的一個問題是,當我導入這些類時,它們屬於不同的命名空間。 所以起初我決定改變所有類的命名空間來“規范化”這個問題。 它碰巧適用於編寫代碼,但在運行時它返回錯誤。 所以我最終所做的是返回到原始命名空間,並在 Default.aspx.cs 文件的頂部包含“使用 NameOfMyImportedNamespace”。 與命名空間相關的新錯誤再次出現。 因此,我最終通過將文件 Default.aspx.designer.cs 上的先前命名空間(原始)重命名為 NameOfMyImportedNamespace 來解決它,並且它起作用了! 但是,當我今天收到這個新錯誤時,我發現 Default.aspx.designer.cs 文件上的命名空間已重命名回原來的名稱。 所以這次我重命名它時,我注意到 Visual Studio 在你更改的單詞后面繪制的紅色光標,並且有一個選項可以在整個項目本身中重命名該命名空間。 所以我做到了,它終於奏效了。 我想我的項目名稱也會被重命名,但它沒有,所以我認為它可能是解決您問題的合適方法。 順便說一句,我昨天開始在 Windows 7 下運行的 VS2010 Ultimate 上編寫此代碼,並且錯誤發生並在我現在使用的另一台計算機上也得到了解決,在 Windows XP 下運行 VS2010 Enterprise。 所以我想這不應該是操作系統或 VS 版本問題,因為它可以通過重命名命名空間來解決。

你的第一行應該喜歡

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="Default" %>

我得到了 MyProject.csproj 文件的舊副本並將其替換並修復了它。 希望這可以幫助。

您在頁面參考上方缺少您的程序集參考:

<%@ Assembly Name="YOURASSEMBLY.NAME, Version=1.0.0.0, Culture=neutral, PublicKeyToken=YOURPUBLICKEYTOKEN" %>

嘗試從最后一部分中刪除 .Default:Inherits="TestProject.Default"%>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM