несколько отчетов в inline c # на странице asp.net - PullRequest
1 голос
/ 20 июля 2011

У меня есть следующая строка в моем файле aspx:

<asp:Image ID="Image1" runat="server" ImageUrl='<%# MediaHelper.GetMediaUrl(Container.DataItem) %>' Height="114" Width="152"/>

Возможно ли добавить еще одну строку во встроенный c # примерно так?

<asp:Image ID="Image1" runat="server" ImageUrl='<%# MediaHelper.GetMediaUrl(Container.DataItem); SetImageSize(this) %>' Height="114" Width="152"/>

Ответы [ 2 ]

2 голосов
/ 20 июля 2011

Боюсь, что это невозможно. Но вы можете написать другой метод для этого вспомогательного класса, который будет вызывать две операции одновременно.

<asp:Image 
    ID="Image1" 
    runat="server" 
    ImageUrl='<%# MediaHelper.GetMediaUrlAndSetImageSize(Container.DataItem, this) %>' 
    Height="114" 
    Width="152"
/>

Также смешивание кода C # с ASPX может привести к спагетти. Я бы как можно больше избегал этого.

1 голос
/ 20 июля 2011

Вы можете использовать несколько вызовов методов, чтобы выполнить то, что вы пытаетесь сделать:

<asp:Image 
    ID="Image1" 
    runat="server" 
    ImageUrl='<%# MediaHelper.GetMediaUrl(Container.DataItem) %>' 
    Height="<%# MediaHelper.GetMediaHeight(Container.DataItem) %>" 
    Width="<%# MediaHelper.GetMediaWidth(Container.DataItem) %>"
/>

Или просто привязать объект к элементу управления, в котором все эти значения представлены как свойства.

...