Скажем, у меня есть этот повторитель, который использует общедоступную функцию Test в коде программной части.
<asp:Repeater ID="Repeater1" runat="server">
<HeaderTemplate>
<table>
</HeaderTemplate>
<ItemTemplate>
<tr>
<td><%# Eval("MyCol1")%></td>
<td><%# Eval("MyCol2")%></td>
<td><%# Test((int)Eval("MyCol1"))%></td>
</tr>
</ItemTemplate>
<FooterTemplate>
</table>
</FooterTemplate>
</asp:Repeater>
В моем коде программной части у меня есть эта функция
public string Test (int Value)
{
return "Test"+Value.ToString();
}
Это нормально работает, но на моем веб-сайте у меня будут похожие повторители на разных страницах, и большинству из них потребуется вызывать функцию Test. Можно ли было бы вместо того, чтобы помещать его в код программной части каждой веб-страницы, в общедоступный статический класс и вызывать его непосредственно из ретранслятора? Примерно так (что не работает):
<td><%# MyStaticClass.Test((int)Eval("MyCol1"))%></td>
Единственное решение, которое я придумал, - это изменить функцию в коде программной части на:
public string Test (int Value)
{
return MyStaticClass.Test(Value);
}
Но было бы лучше, если бы мне не приходилось вставлять какой-либо код в код программной части каждой веб-страницы (т.е. я бы предпочел, чтобы ретранслятор напрямую вызывал статическую функцию).
Есть идеи или предложения?