использование Eval в vb.net

привет всем....

у меня есть небольшая проблема с моим кодом в vb.net, который я хочу использовать (Eval) в своем проекте

поэтому я пишу этот код:

<asp:Label ID="Label1" runat="server"
 Text='<%#Eval("PAG_PAGES") == null ? "" : ((PostAgenciesModel.PAG_PAGES)(Eval("PAG_PAGES"))).PAGE_TITLE_AR %>' />

и этот код, который я использовал в своем проекте С#.... все хотят показать (Label1) внутри моего GridView....

("PAG_PAGES") это имя таблицы..

PostAgenciesModel это edmx...

PAGE_TITLE_AR - это столбец в ("PAG_PAGES"), который я хочу показать

может кто поможет плиззз

Спасибо


person Bin_Zain    schedule 08.05.2010    source источник
comment
Пожалуйста, не забывайте об орфографии и орфографии   -  person abatishchev    schedule 08.05.2010


Ответы (2)


Проблема в том, что вы используете функции C# в веб-приложении VB.NET.

Ключевое слово null и операторы ?: и == являются конструкциями C#.

В VB.NET null — это Nothing, == — это IS, а ?: — это IIf< /а> функция.

person Oded    schedule 08.05.2010
comment
Спасибо за ваш ответ, Одед .... но все же у меня есть проблема ... когда я изменяю код, который вы вставили, он дает эту ошибку: Сообщение об ошибке компилятора: BC30456: «PAGE_TITLE_AR» не является членом «Char». я написал свой код так: <asp:Label ID="Label1" runat="server" Text='<%#Eval("Pages") is Nothing IIf ((ReportsOfficesModel.Pages)(Eval("Pages"))).PAGE_TITLE_AR %>'></asp:Label> - person Bin_Zain; 08.05.2010
comment
Функция IIf здесь не подходит, так как она всегда оценивает как условие True, так и предложение False. Таким образом, доступ к элементу Eval("PAG_PAGES") приведет к исключению NullReferenceException, если Eval("PAG_PAGES") имеет значение Nothing. Оператор If решает эту проблему. - person Heinzi; 08.05.2010

<%# If(Eval("PAG_PAGES") Is Nothing, 
        "", 
        DirectCast(Eval("PAG_PAGES"), PostAgenciesModel.PAG_PAGES).PAGE_TITLE_AR) %>

Развивая то, что написал Одед:

expr == null  --->  expr Is Nothing
a ? b : c     --->  If(a, b, c)
(Type)expr    --->  DirectCast(expr, Type)
person Heinzi    schedule 08.05.2010
comment
привет .... спасибо за ответы, ребята ..... но все же у меня есть проблема ... сообщение об ошибке показывает: 'BC30007: требуется ссылка на сборку 'System.Data.Entity, версия = 3.5.0.0, культура = нейтральный, PublicKeyToken=b77a5c561934e089», содержащий базовый класс «System.Data.Objects.DataClasses.EntityObject». Добавьте один в свой проект». я добавляю ссылку в свой проект «System.Data.Entity», но я не знаю, в чем проблема - person Bin_Zain; 09.05.2010
comment
@Bin: это другая проблема (связанная с инфраструктурой сущностей, а не с C# -> VB.NET); вы должны открыть второй вопрос для этого (и пометить его entity-framework). - person Heinzi; 09.05.2010