CS0103: имя 'rGrid' не существует в текущем контексте

У меня есть страница ASPX:

<%@ Page Language="C#" MasterPageFile="~/site.Master" AutoEventWireup="true" CodeBehind="Default.aspx.cs" Inherits="myProject.Presentation.Web.Default" src="Default.aspx.cs" %>
<%@ MasterType VirtualPath="~/site.Master" %>

...

<asp:Repeater ID="rGrid" runat="server">
 <ItemTemplate>
  ...
 </ItemTemplate>
</asp:Repeater>

С этим мастером:

<%@ Master Language="C#" AutoEventWireup="true" Codebehind="site.master.cs" Inherits="myProject.Presentation.Web.master" src="~/site.Master.cs" %>

Когда я пытаюсь получить доступ к одному из членов на странице:

namespace myProject.Presentation.Web {
public partial class Default : System.Web.UI.Page
     ...
     rGrid.DataSource = myProject.Business.User.GetReports(UserId, true);

Я получаю этот YSOD на этой линии:

CS0103: The name 'rGrid' does not exist in the current context

И все же Intellisense и Object Exporer говорят, что это действительно. Это почему?

3 ответа

Решение

Это веб-сайт или веб-приложение?

Если это веб-приложение, удалите файлы дизайнера, затем щелкните правой кнопкой мыши на странице aspx и / или главной странице и выберите команду "Преобразовать в веб-приложение". Это восстановит файлы дизайнера.

Это чепуха, законсервированный проект и переделанный как проект сайта.

Эта ошибка обычно возникает, когда значения переменной и ее использование находятся в разных областях. Проверьте файл *.aspx.cs и пространство имен файла конструктора, пространства имен должны совпадать.

Другие вопросы по тегам