为什么我得到 "Object reference not set to an instance of an object." 但没有涉及任何代码行?

Why am I getting, "Object reference not set to an instance of an object." but no line of code is implicated?

当我尝试构建我的 VB.NET 解决方案时,出现错误,"Object reference not set to an instance of an object." 但在“错误列表”窗格中,“文件”、“行”、“列”和“项目”列为空白:

如果它不告诉我它在哪里,我该如何解决问题?

更新

我 select 编辑了项目,然后 "Show Project Dependency Diagram" 得到了这个:

我不知道我在看什么。

更新 2

我不知道这是否异常或在意料之中,但如果我按 F5,我确实会在浏览器中得到一个页面 (http://localhost:2030/),没有任何错误消息;当然,该页面看起来像冬天从飞机上看到的北达科他州。

更新 3

现在(在解决了几个明显的问题后,例如未终止的 html 标签),它甚至不会说重建全部没问题(改进它使它成为 "worse")。

通过全部重建和构建,我得到“对象引用未设置到对象的实例。”但没有指示在哪里找到未设置的对象引用.

更可怕的是,当我 运行 Resharper > Inspect > Code Issues in Solution 时,除其他外,还有 10 个 VB 编译器错误,以下两种类型:

Cannot resolve symbol '_GridName'
Cannot resolve symbol 'Class1'

为什么会出现编译错误,但仍然可以编译?越来越奇怪了。

为了了解这个项目有多少警告、错误等,这里是 Resharper tsk-tsks 的概述:

20 个错误和 1000 个其他错误 "issues" - 这让我感觉像是在写一首乡村歌曲!

更新 4

当我右键单击该项目并 select "View in Page Inspector" 我看到以下内容:

这可能是问题所在吗?如果是,我如何确保开发服务器 运行正在 .NET 4.0 或更高版本上运行?

或者这是一条红鲱鱼?

更新 5

现在有一个警告可能会在此处提供一些线索:

C:\MemberOrderEntry\MembersOrderEntry\MembersOrderEntry\Weyand\Default.aspx: ASP.NET 运行时间错误:对象引用未设置到对象的实例。

这是警告涉及的代码行:

<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="Weyand._Default" title="Web Order Entry" %>

整个Default.aspx文件是:

<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="Weyand._Default" title="Web Order Entry" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>Order Entry Login Page</title>
</head>
<body>
<form id="form1" runat="server">
    <div>
    </div>
</form>
</body>
</html>

另一个警告是,“验证(XHTML 1.0 过渡版):不支持元素 'page'。 C:\MemberOrderEntry\MembersOrderEntry\MembersOrderEntry\Weyand\Default.aspx”

这对任何人来说 anything/make 有意义吗?那里需要删除或更改什么?

还有许多其他文件具有相同的确切代码:

<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="Vinyard._Default" title="Web Order Entry" %>

(除了他们有 "Vinyard" 或其他东西而不是 "Weyand");那么为什么他们不对同一件事发出多个警告,而不仅仅是这个?

UDPATE 6

那好吧! (arghh) 如果我在解决方案资源管理器中展开这些文件,它们 do 会引发警告。为什么会这样?除非在解决方案资源管理器中展开它们,否则编译器不会注意到它们?这毫无意义...

更新 7

问题的根源是"Element 'page' is not supported"吗?

展开三个文件夹后,我看到:

"page"是这样的:

<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="Vinyard._Default" title="Web Order Entry" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

好像每个"Page"都有问题;对于每一个,都有一个可能对应的 "ASP.NET runtime error: Object ref not set" 警告 - 这可能是导致相同类型错误的原因。

如果 'Page' 元素是 the/a 问题,如何修复它?

如果我简单地删除它,像这样:

<%@Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="Vinyard._Default" title="Web Order Entry" %>

...然后我明白了,"Element '' is not supported." 这不仅仅是第 22 条军规,因为当所有内容都展开时,会发现更多的错误。

更新 8

这些错误让我想知道:"Inherits" 指令表示什么?我有如:

Inherits="CapitolCity._Default"

在更多上下文中,出现在 Default.aspx 个文件中,如下所示:

<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="CapitolCity._Default" title="Web Order Entry" %>

在我能看到的任何地方都没有 "CapitolCity._Default" 文件(这显然应该是 "inherited")。这里继承了什么,或者试图继承什么?

在这种情况下,上面一行的文件是Default.aspx,beneath/within \\CapitolCity 文件夹。在它下面是 Default.aspx.vb 文件。

有一个\\Default.aspx文件,下面有一个Default.aspx.vb。第一个是:

<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="_Default" title="Web Order Entry" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title></title>
</head>
<body>
<form id="form1" runat="server">
    <div>
    </div>
</form>
</body>
</html>

它有什么问题吗?如果没有,是什么导致了这种巨大的头痛?

这是一个莫名其妙的问题,不过既然已经解决了,不妨也能得到一个答案。

我认为这是 .suo 文件中的一个错误,因为我的 VS 最近表现异常,我的程序突然开始崩溃,无法构建并提示 Office 引用无效。

我尝试过的一个修复是清理并重新构建解决方案,它在大约 1/4 的时间内工作,其他时候我不得不物理删除并再次添加引用,然后重新构建整个解决方案。

在厌烦了一周左右的时间后,我刚刚在我们的工作服务器上的其他地方创建了一个备份,删除了新文件夹中的 .suo 文件,然后打开并构建了整个解决方案。

已修复。不知道为什么,或者出了什么问题,但 .suo 文件和引用中时不时会发生奇怪的事情。