«использование» эквивалента пространства имен в разметке ASP.NET - PullRequest
22 голосов
/ 22 августа 2008

Когда я работаю с элементами управления DataBound в ASP.NET 2.0, такими как Repeater, я знаю, что самый быстрый способ получить свойство связанного объекта (вместо использования Reflection с функцией Eval ()) - привести Объект DataItem к типу, которым он является, а затем использовать этот объект изначально, как показано ниже:

<%#((MyType)Container.DataItem).PropertyOfMyType%>

Проблема в том, что если этот тип находится в пространстве имен (что имеет место в 99,99% случаев), то это единственное утверждение, потому что оно намного длиннее из-за того, что на странице ASP нет понятия области видимости класса, поэтому все мои типы должны быть полностью квалифицированы.

<%#((RootNamespace.SubNamespace1.SubNamspace2.SubNamespace3.MyType)Container.DataItem).PropertyOfMyType%>

Существует ли какая-либо директива using или какой-либо эквивалент, который я мог бы разместить где-нибудь на странице ASP.NET, чтобы мне не приходилось каждый раз использовать полное пространство имен?

Ответы [ 2 ]

56 голосов
/ 22 августа 2008

Я полагаю, вы можете добавить что-то вроде:

<%@ Import Namespace="RootNamespace.SubNamespace1" %> 

Вверху страницы.

7 голосов
/ 22 августа 2008

Вам нужна директива @ Import page .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...