有人可以解释这个错误吗?
创建控件时出错 - 磁头 对象引用未设置为对象的实例。
<%@ Page Title="" Language="C#" MasterPageFile="~/Controls/Master1.Master"
AutoEventWireup="true" CodeBehind="GrupoUsuario.aspx.cs" Inherits="GrupoUsuario" %>
<asp:Content ID="Content1" runat="server" contentplaceholderid="head">
</asp:Content>
我认为这是visual studio 2010在设计视图中的一个错误。我没有使用任何事件来操作方法OnInt()中的会话对象。 “PlaceHolderTopo”是Web用户控件Topo.ascx中的占位符。这是正常的工作。我在页面中的内容占位符中没有任何代码从主页继承并得到此错误。
以下是母版页的代码:
<%@ Master Language="C#" AutoEventWireup="true" CodeBehind="PrincipalSeguranca.Master.cs" Inherits="PrincipalSeguranca" %>
<%@ Register Src="Topo.ascx" TagName="Topo" TagPrefix="uc1" %>
<%@ Register src="MenuAdmin.ascx" TagName="MenuAdmin" TagPrefix="uc2" %>
<%@ Register src="Rodape.ascx" tagname="Rodape" tagprefix="uc3" %>
<!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>Sistema</title>
<script language="jscript" type="text/javascript" src="Scripts/Geral.js"></script>
<link rel="shortcut icon" href="../layout/ico/favicon.ico" type="image/x-icon" />
<link rel="stylesheet" href="../layout/css/styles.css" type="text/css" />
<link href="../layout/css/menu_tabbed.css" rel="stylesheet" type="text/css" />
<link rel="stylesheet" href="../layout/css/contents.css" type="text/css" />
</head>
<body>
<form id="form1" ClientInstanceName="form1" runat="server">
<uc1:Topo ID="Topo1" runat="server" />
<div id="corpo">
<asp:ContentPlaceHolder ID="head" runat="server">
</asp:ContentPlaceHolder>
</div>
<div id="rodape">
<uc3:Rodape ID="Rodape1" runat="server" />
</div>
</form>
</body>
</html>
答案 0 :(得分:5)
您在设计时Rodape
控件中存在错误。
在“设计”视图中打开页面时,它会在Visual Studio的过程中创建自定义控件的实例。由于您的网站实际上并未运行,您控件中的代码可能正在访问一些尚未初始化的静态成员。
您应该启动Visual Studio的第二个副本,将其调试器附加到第一个副本,在“调试”菜单中设置“在所有异常上中断”,然后找到您的错误。