【问题标题】:Aspx.cs doesn't recognize controls declared in aspx ?! - CS0103Aspx.cs 无法识别在 aspx 中声明的控件?! - CS0103
【发布时间】:2018-06-02 11:02:11
【问题描述】:

我正在使用 asp.net C# 开发一个项目,其中调试器显示以下错误 CS0103 [名称在当前上下文中不存在]

我试图删除我的 aspx.cs 文件并重新生成它。 我有一种感觉是导致问题的原因是母版页

代码如下:

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="AddEmployee.aspx.cs" Inherits="AddEmployee" Title="test" MasterPageFile="~/AdminMaster.master" %>
<asp:Content ID="Content2" ContentPlaceHolderID="head" runat="server">

我的html + css + js 代码在ID="Content1" 标签内,您认为这是什么原因造成的?

更新

这是来自我的AddEmployee.aspx

<asp:TextBox type="text" class="effect" id="FirstName" placeholder="FirstName" required="required" runat="server" /> 

我有大约 8 个 asp:Textbox 并且调试器显示错误这 8 个以下是错误示例

状态错误 CS0103 当前上下文中不存在名称“FirstName”

更新:中途解决方案

我尝试了以下方法,我复制了我的母版页代码并将其传递到目标 .aspx 页面

所以我正在运行没有母版页的页面并猜测它现在的工作原理

那么我应该怎么做才能使它与母版页一起使用?

【问题讨论】:

  • MasterPageFile 前有 > 是有原因的吗?这是在代码中还是只是这个问题的错字?
  • 它不在我的代码中我试图将整个代码放在一个块中
  • 好的,谢谢,想确认这是问题中的拼写错误,而不是您的代码。

标签: c# asp.net .net visual-studio master-pages


【解决方案1】:

您的 TextBox 没有正确的 TextBox 结束标记 应该是这样的:

<asp:TextBox type="text" class="effect" id="FirstName" placeholder="FirstName" required="required" runat="server"></asp:TextBox>
  1. 您应该检查您的 aspx 设计文件中是否存在 TextBox FirstName...这可能会导致问题
  2. 检查您是否关闭了 Content2 的标签

如果您将所有的 aspx 代码都放在这里会很有帮助。

【讨论】:

  • 你能检查一下我添加的部分[更新:中途解决方案] 我提到我解决了问题,但仍然不是我想要的。我的解决方案是放弃使用母版页。我认为这是一个坏主意,因为这意味着我将在所有页面上重复页眉和页脚。如果有办法在不使用母版页的情况下不重复页眉和页脚,请随时帮助我
  • 我认为您的母版页代码中可能存在错误...但是没有它我什么也做不了,我需要查看它
  • Omer Eli 我无法添加我的母版页代码,它超过 500 行,我认为这里的最大值是 600。我将把主要结构给一个想法
  • 好的,我即将放弃使用母版页 此评论来自用户:Dan 我意识到如果我的页面上有一个 asp:Content 标记,并且 contentplaceholderID 设置为母版页中的内容占位符,我将永远无法访问内容占位符中的任何控件。 asp:Content 页面始终与 MasterPage 内容合并,即使 asp:Content 标记在您的内容页面上为空。为了提供默认内容,我将标签移到了内容占位符标记之外,并将可见性设置为 false。
猜你喜欢
  • 1970-01-01
  • 2016-06-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-08-31
  • 2020-02-22
  • 1970-01-01
相关资源
最近更新 更多