Подскажите, пожалуйста, как такое может быть:
Проект был написан на ASP.NET 1.1 . После перехода на .NET 2.0 появилась следующая ошибка — "The type or namespace name 'Object' does not exist in the namespace 'MyProject.UserControls'". Класс, в котором появляется такая ошибка, находится в "App_Code", namespace 'MyProject'. При этом в 1.1 всё нормально работало...
Ругается вот на такой код:
using MyProject.UserControls.Object;
namespace DoneItWeb
{
/// <summary>
/// Summary description for Utility.
/// </summary>public class Utility
{
/* здесь в одной из функций используется класс
из namespace 'MyProject.UserControls.Object'. Соответственно,
на этом использовании тоже валится...
*/
}
The type or namespace name does not exist in the namespace
От:
Аноним
Дата:
01.12.06 09:02
Оценка:
А что именно написано в файле класса, который в пространстве имен MyProject.UserControls.Object?
Здравствуйте, Laenas, Вы писали:
L>Подскажите, пожалуйста, как такое может быть: L>Проект был написан на ASP.NET 1.1 . После перехода на .NET 2.0 появилась следующая ошибка — "The type or namespace name 'Object' does not exist in the namespace 'MyProject.UserControls'". Класс, в котором появляется такая ошибка, находится в "App_Code", namespace 'MyProject'. При этом в 1.1 всё нормально работало...
Дело в том что в asp.net 2.0 изменился механизм компиляции страниц, теперь, по умолчанию, каждая папка генерируется в отдельную сборку. И чтобы, например, в юзер-контроле из одной папке динамически загрузить юзер-контрол из другой папки, то необходимо декларативно зарегистрировать динамически подгружаемый контрол.
Если вам привычнее модель компиляции страниц и контролов как в asp.net 1.0, то лучше установите себе web application project template. В нем работает модель компиляции из 1.0
Re[2]: The type or namespace name does not exist in the name
Здравствуйте, A_HREF, Вы писали:
A_H>Здравствуйте, Laenas, Вы писали:
L>>Подскажите, пожалуйста, как такое может быть: L>>Проект был написан на ASP.NET 1.1 . После перехода на .NET 2.0 появилась следующая ошибка — "The type or namespace name 'Object' does not exist in the namespace 'MyProject.UserControls'". Класс, в котором появляется такая ошибка, находится в "App_Code", namespace 'MyProject'. При этом в 1.1 всё нормально работало...
A_H>Дело в том что в asp.net 2.0 изменился механизм компиляции страниц, теперь, по умолчанию, каждая папка генерируется в отдельную сборку. И чтобы, например, в юзер-контроле из одной папке динамически загрузить юзер-контрол из другой папки, то необходимо декларативно зарегистрировать динамически подгружаемый контрол.
A_H>Если вам привычнее модель компиляции страниц и контролов как в asp.net 1.0, то лучше установите себе web application project template. В нем работает модель компиляции из 1.0
Спасибо за совет! Можно ещё один вопрос? Если необходимо использовать динамически подгружаемый коонтрол не в другом UserControl'е, а в обычном C# класе — как поступить в этом случае?
Re: The type or namespace name does not exist in the namespa
Здравствуйте, gaidar, Вы писали:
G>А что именно написано в файле класса, который в пространстве имен MyProject.UserControls.Object?
G>данное сообщение получено с www.gotdotnet.ru G>ссылка на оригинальное сообщение
Там описан UserControl, отображающий поля для адреса. Класс контрола объявлен как 'public partial'.
Re[3]: The type or namespace name does not exist in the name
Здравствуйте, Laenas, Вы писали:
L>Спасибо за совет! Можно ещё один вопрос? Если необходимо использовать динамически подгружаемый коонтрол не в другом UserControl'е, а в обычном C# класе — как поступить в этом случае?
Вроде никак, насколько я помню. Вся проблема в том, чтобы сделать референс динамически сгенерированной сборки вашего юзерконтрола к сборке вашего класса.
Re[4]: The type or namespace name does not exist in the name
Здравствуйте, A_HREF, Вы писали:
A_H>Здравствуйте, Laenas, Вы писали:
L>>Спасибо за совет! Можно ещё один вопрос? Если необходимо использовать динамически подгружаемый коонтрол не в другом UserControl'е, а в обычном C# класе — как поступить в этом случае?
A_H>Вроде никак, насколько я помню. Вся проблема в том, чтобы сделать референс динамически сгенерированной сборки вашего юзерконтрола к сборке вашего класса.
Ага... Ладно, пока обойдусь окльными путями — вставлю нужный код прямо в UserControl, в котором он должен использоваться, раз вынести в отдельный класс 'Utility' не получлось. Благо, используется этот код пока только в одном месте. А потом, когда аврал пройдёт, буду думать...