2012-02-02 2 views
0

Итак, я создал файл класса «Лица» на веб-сайт и разместил его в папке с именем App_Code.ASP.NET Не удается инициировать экземпляр объекта класса I, созданного

Но теперь в моем default.aspx.cs я не могу показаться, чтобы создать то Persons test = new Persons();

Говорит

Тип или пространство имен Лица, не нашли

Это мой человек класс до сих пор

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Web; 

namespace WebApplication1.App_Code 
{ 
    public class Persons 
    { 
     public string FirstName { get; set; } 
     public string LastName { get; set; } 
     public string Email { get; set; } 

     public string DisplayFullName() 
     { 
      string info; 
      info = "FullName is: " + FirstName + " " + LastName; 
      return info; 
     } 

     public void setData(String sLine) 
     { 
      this.FirstName = "Test"; 
     } 
    } 
} 

ответ

0

Yo ur Person и ваша кодовая страница aspx находятся в разных пространствах имен. Вы не можете разрешать имена типов в пространствах имен, не импортируя их с помощью ключевого слова uses.

Добавить

using WebApplication1.App_Code; 

В верхней части default.aspx кода позади страницы.

Если вы наведите указатель мыши на Person, где у вас есть ошибка, вы должны получить небольшое вспомогательное всплывающее окно, в котором есть возможность автоматически добавлять отсутствующее предложение.

Если ваш рабочий чисто с файлом ASPX, без кода позади, используйте:

<%@ Import namespace="MyProgram.MyNamespace" %> 

Так что в вашем случае:

<%@ Import namespace="WebApplication1.App_Code" %> 
+0

Когда я пытаюсь это сделать, добавляя к default.aspx с помощью WebApplication1.App_Code; Я получаю ошибку в App_Code, говоря, что пространство имен не существует – StevieB

+0

@StevieB Это должно быть в вашем файле * .cs, а не в файле aspx html. Если вы не делаете свой код в файле aspx с отметками разметки. В этом случае используйте '<% @ Import namespace =" MyProgram.MyNamespace "%>' – asawyer

+0

Да, я знаю, что получаю эту ошибку в файле .cs – StevieB

1

Вы должны импортировать соответствующее пространство имен в вашем коде позади (default.aspx.cs):

using WebApplication1.App_Code; 
+0

Да, не работает Я получаю там ошибку, добавив к default.aspx с помощью WebApplication1.App_Code; Я получаю ошибку в App_Code, говоря, что пространство имен не существует – StevieB

+0

Когда я пытаюсь сделать публичное пространство имен WebApplication1.App_Code, я получаю сообщение об ошибке, которое гласит, что декларация пространства имен не может иметь модификаторов или атрибутов – StevieB

+0

@Akhil Что? 'public namespace xxx'? «Пространства имен неявно имеют открытый доступ, и это не поддается изменению» http://msdn.microsoft.com/en-us/library/z2kcy19k.aspx – asawyer

Смежные вопросы