C# 我可以在用户控件内创建内联函数/方法吗?

C# 我可以在用户控件内创建内联函数/方法吗?,c#,asp.net,C#,Asp.net,我想在用户控件内创建一个内联函数/方法,以便执行以下操作: 在my test.ascx中: <asp:Repeater ...> <itemTemplate> <p><%# MyInlineMethod(Eval("hello").ToString())%> </p> <itemTemplate> </asp:Repeater> 这是可能的吗?是的,这是可能的,但必须是静态的。您必须使用

我想在用户控件内创建一个内联函数/方法,以便执行以下操作:

在my test.ascx中:

<asp:Repeater ...>
  <itemTemplate>
     <p><%# MyInlineMethod(Eval("hello").ToString())%> </p>
  <itemTemplate>
</asp:Repeater>


这是可能的吗?

是的,这是可能的,但必须是静态的。您必须使用完全限定名访问它或导入名称空间

<%@ Import Namespace="RootNamespace.SubNamespace1" %>

<asp:Repeater ...>
  <itemTemplate>
     <p><%# MyClass.MyInlineMethod(Eval("hello").ToString())%> </p>
  <itemTemplate>
</asp:Repeater>

公共类WebUtils
{
公共静态字符串GetStyleName(bool isActive)
{
返回isActive?“activeStyleName”:“notactiveStyleName”;
}
}

在大多数情况下,最好在将数据绑定到数据源之前对数据执行此类操作,虽然这样做可行,但通常更容易出错,也更耗时。
namespace RootNamespace.SubNamespace1
{
     public class MyClass
     {
         public static string MyInlineMethod(string input){
            return string.Format("{0}!!!",input);
         }
     }
}