Вызов функции из исходного кода GridView - PullRequest
1 голос
/ 17 марта 2010

Вот мой GridView HTML:

<asp:GridView ID="gvPortfolioImages" runat="server" AutoGenerateColumns="False" DataSourceID="ldsPortfolioImages">
    <Columns>          
        <asp:TemplateField HeaderText="Image" SortExpression="Filename">
            <ItemTemplate>
                <img src='<%# Portfolio.GetImageURL(Eval("Thumbnail").ToString()) %>' alt='<%# Eval("Thumbnail") %>' />
            </ItemTemplate>
        </asp:TemplateField>
    </Columns>
</asp:GridView>

Я получаю следующую ошибку, когда пытаюсь вызвать Portfolio.GetImageURL ():

Имя «Портфолио» не существует в текущем контексте

Я видел функции, которые назывались вот так раньше, но, похоже, у меня не работает. Может кто-нибудь сказать мне, в чем проблема?

Ответы [ 2 ]

1 голос
/ 17 марта 2010

На вашей странице aspx вам нужно включить пространство имен, чтобы компилятор знал о вашем объекте Portfolio, который, как я предполагаю, является статическим классом со статической функцией (если нет, вам нужно будет создать экземпляр объекта Portfolio перед его использованием) , Вот фрагмент кода, который вам нужно будет добавить после <@ Page вверху файла aspx. Замените строку на правильное пространство имен, конечно.

<%@ Import Namespace="YourApps.Namespace.Where.PorfolioIs" %>

Ошибка происходит, потому что она не знает, что такое Portfolio. Это как если бы вы пытались ссылаться на него в своем коде (файл .cs) без оператора using, включая пространство имен, в котором существует ваш класс Portfolio.

0 голосов
/ 17 марта 2010

Предполагая, что Портфолио является допустимым объектом, предоставили ли вы ссылку на его пространство имен через оператор using? Также убедитесь, что GetImageURL () является статической функцией. Возможно, вы захотите просто разместить функцию GetImageURL () статической строки с защитой от ложных срабатываний в коде вашего GridView. Возможно, вам удастся определить первопричину путем проб и ошибок.

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