内联c#和asp.net页面中的多个语句
本文关键字:语句 asp net 内联 | 更新日期: 2023-09-27 18:02:53
在我的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"/>
恐怕这是不可能的。但是,您可以在这个助手类上编写另一个方法,它将同时调用这两个操作。
<asp:Image
ID="Image1"
runat="server"
ImageUrl='<%# MediaHelper.GetMediaUrlAndSetImageSize(Container.DataItem, this) %>'
Height="114"
Width="152"
/>
同样,将c#代码与ASPX混合可能会导致面条。我会尽量避免使用
您可以使用多个方法调用来完成您正在尝试做的事情:
<asp:Image
ID="Image1"
runat="server"
ImageUrl='<%# MediaHelper.GetMediaUrl(Container.DataItem) %>'
Height="<%# MediaHelper.GetMediaHeight(Container.DataItem) %>"
Width="<%# MediaHelper.GetMediaWidth(Container.DataItem) %>"
/>
或者只是将一个对象绑定到控件,该控件将所有这些值作为属性公开。