我可以在没有* web服务的情况下使用AJAX Autocomplete扩展器*吗?

时间:2009-04-23 11:06:24

标签: asp.net vb.net ajax autocompleteextender

将ASP.NET 3.5与VB代码隐藏一起使用。

我不想使用Web服务来填充文本框中的自动完成扩展程序。在这种情况下,它是用户输入电子邮件地址的地方,我不想每次都去数据库。我宁愿将一个集合保持在会话状态,并将自动完成“绑定”到那个。

是否可以将ServicePath和/或ServiceMethod设置为代码隐藏中的某些内容而不是Web服务?

4 个答案:

答案 0 :(得分:1)

是的,ServiceMethod可以命名页面方法。请参阅AutoCompleteExtender的文档。 ServicePath作为可选项,如果省略,ServiceMethod将引用当前ASP.NET页面的静态方法(必须使用2个特定属性进行修饰)。

答案 1 :(得分:0)

特定的自动填充功能需要Web服务。您可能需要考虑使用jQuery之类的东西来执行自动完成。我在Google上找到了一个支持本地阵列的this

答案 2 :(得分:0)

您本身不必使用网络服务。 (.asmx或.svc)

但你需要某种服务器脚本,.aspx,.ashx等

您需要某种数据库。如果需要,您可以在应用程序或会话中保留一些内容。如果是相同的数据则将其放入应用程序中。

服务器脚本(无论它是什么)必须根据他们输入的内容过滤结果。

虽然使用Web服务更容易,尤其是使用内置的JSON序列化程序。

重新阅读你的问题后......

你真的在问缓存。

您可以添加正在运行的查询的数据,并将其添加到asp.net缓存中。

WebServices可以访问与.aspx相同的Cache对象。

所以缓存它并将其推出asmx作为JSON

答案 3 :(得分:0)