在asp.net中调用方法时传递一个字符串参数

时间:2010-03-04 19:45:55

标签: c# asp.net

我在cs页面中有这个方法:

public String getToolTip(Object productId, Object imgBtnId)
{
    return UtilsStatic.getWishListButtonToolTip(Int32.Parse(productId.ToString()), getCumparaturiCategoryID(imgBtnId.ToString()));
}

我想从asp.net页面(aspx)调用它。

我试过这样但是失败了:

 ToolTip="<%# getToolTip(getProductIdNoutatiFeatured(), 'imgBtnWishSubcategory2Featured')%>"/>

请注意,第二个参数是一个硬编码字符串......但它说:

  

CS1012:字符文字中的字符太多

我认为将字符串放在''之间是错误的。但是如何?

3 个答案:

答案 0 :(得分:6)

您不能对字符串使用单引号,您必须撤消单引号和双引号的使用:

ToolTip='<%# getToolTip(getProductIdNoutatiFeatured(),
                        "imgBtnWishSubcategory2Featured")%>'/>

答案 1 :(得分:0)

应该是

ToolTip="<%# getToolTip(getProductIdNoutatiFeatured(), \"imgBtnWishSubcategory2Featured\")%>"/>

答案 2 :(得分:0)

我认为,除了引号问题,您还尝试使用绑定&lt;%#%&gt;而不是用starndard response.write写出结果

'<%=getToolTip(getProductIdNoutatiFeatured(), "imgBtnWishSubcategory2Featured")%>'