我正在使用ASP.NET ajax幻灯片扩展程序工具来显示图像幻灯片。我按照视频教程进行了参考from here。
我将GetSlides函数定义为:
public AjaxControlToolkit.Slide[] GetSlides(string parms) {
-----
-----
}
在aspx页面中,我需要传递该页面的查询字符串中的参数值。我用来将参数传递给函数的代码是:
<ajax:SlideShowExtender ID="SlideShowExtender1" runat="server"
AutoPlay="true" ImageDescriptionLabelID="lblImageDescription"
Loop="true" NextButtonID="Btn_Next" PlayButtonID="Btn_Play"
PlayButtonText="Play" PreviousButtonID="Btn_Previous"
SlideShowServiceMethod="GetSlides(<%= Request.QueryString["tempID"] %>)" StopButtonText="Stop"
TargetControlID="Image1">
</ajax:SlideShowExtender>
但是,这提供了服务器构造的基本错误:Server tags cannot contain <% ... %> constructs
。
我也使用像"<%$ AppSettings: FooText %>"
这样的文本通过web.config检查了表达式构建器概念。但该参数本身是动态的,不能存储在Web配置文件中。那么我应该如何传递GetSlides函数的查询字符串参数?
答案 0 :(得分:2)
您可以从codebehind设置参数。使用ContextKey属性:
SlideShowExtender1.ContextKey = Request.QueryString["tempID"];
此外,您的方法必须具有签名:
public AjaxControlToolkit.Slide[] GetSlides(string contextKey)
一切都在文档中。