如何在web.config中授予ASP.NET AJAX Toolkit权限?

时间:2010-06-24 20:17:31

标签: asp.net asp.net-ajax permissions ajaxcontroltoolkit web-config

我一直在尝试将ASP.NET工具包添加到我的Web应用程序中,我可以让演示站点工作,但我似乎无法在我的应用程序中实现任何控件。在玩了一会儿之后,我想我已经找到了问题。在我的web.config中,我有:

<authorization>
    <allow roles="Users"/>
    <deny users="*"/>
</authorization>

如果我将其更改为:

<authorization>
    <allow roles="Users"/>
</authorization>

然后一切都很美妙。是否需要包含一组权限才能使Toolkit正常工作?

谢谢!

2 个答案:

答案 0 :(得分:1)

你看到了什么错误?

您是否检查过脚本是否正确传送到浏览器(Firebug可以很容易地看到所有被调用的脚本及其内容)?

如果您正在调用页面方法,请检查从您的页面返回的响应(再次,Firebug是您的朋友 - 控制台将向您显示正在发送的AJAX请求和服务器的响应)。

我刚刚在一个页面上设置了一个带有AjaxToolkit自动完成扩展器的快速测试工具,该页面以与您描述的方式类似的方式锁定,并且一切正常 - 您是如何配置ToolkitScriptManager的? / p>

答案 1 :(得分:0)

IE 8.0和AjaxControlToolkit.AjaxFileUpload存在问题 使用授权配置:

<authorization>
    <allow roles="Users"/>
    <deny users="*"/>
</authorization>

解决方案是在web.config中定义:

  <location path="AjaxFileUploadHandler.axd">
    <system.web>
      <authorization>
        <allow users="*"/>
      </authorization>
    </system.web>
  </location>

  <location path="CombineScriptsHandler.axd">
    <system.web>
      <authorization>
        <allow users="*"/>
      </authorization>
    </system.web>   </location>

如果您实例AjaxFileUpload的文件位于网站ex)foobar的文件夹中,则该位置必须为:<location path="foobar/CombineScriptsHandler.axd">
<location path="foobar/AjaxFileUploadHandler.axd">