Передача строкового параметра при вызове метода в 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 ответа
Решение
Вы не можете использовать одинарные кавычки для строки, вы должны обратить вспять использование одинарных и двойных кавычек:
ToolTip='<%# getToolTip(getProductIdNoutatiFeatured(),
"imgBtnWishSubcategory2Featured")%>'/>
Так должно быть
ToolTip="<%# getToolTip(getProductIdNoutatiFeatured(), \"imgBtnWishSubcategory2Featured\")%>"/>
Я думаю, что, как и проблема с кавычками, вы пытаетесь использовать привязку <% #%> вместо того, чтобы записывать результат со starndard response.write
пытаться
'<%=getToolTip(getProductIdNoutatiFeatured(), "imgBtnWishSubcategory2Featured")%>'