Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/31.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 如何在内容页可访问的asp.net母版页中注册程序集?_C#_Asp.net_Asp.net Ajax_Master Pages - Fatal编程技术网

C# 如何在内容页可访问的asp.net母版页中注册程序集?

C# 如何在内容页可访问的asp.net母版页中注册程序集?,c#,asp.net,asp.net-ajax,master-pages,C#,Asp.net,Asp.net Ajax,Master Pages,我正在试验母版页,我希望AjaxControlToolkit在我的web应用程序的每个页面上都可用,所以我将它放在母版页的开头 <%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="ajax" %> 这引发了一个错误:未知的服务器标记“ajax:Accordion”。 如果我把它放在内容页上,它就可以正常工作。我在这里遗漏了什么吗?您需要在使用该程序集的每个页面

我正在试验母版页,我希望AjaxControlToolkit在我的web应用程序的每个页面上都可用,所以我将它放在母版页的开头

 <%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="ajax" %>

这引发了一个错误:未知的服务器标记“ajax:Accordion”。


如果我把它放在内容页上,它就可以正常工作。我在这里遗漏了什么吗?

您需要在使用该程序集的每个页面或web.config中注册该程序集。仅在母版页中注册程序集不会使使用母版页的页面看到程序集

 <%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="ajax" %>
有关如何在web.config中执行此操作的说明,请参阅

web.config将进行必要的更改:

<system.web>
    <pages>
      <controls>
        <add tagPrefix="scottgu" src="~/Controls/Header.ascx" tagName="header"/>
        <add tagPrefix="scottgu" src="~/Controls/Footer.ascx" tagName="footer"/>
        <add tagPrefix="ControlVendor" assembly="ControlVendorAssembly"/>
      </controls>
    </pages>
  </system.web>

谢谢,效果很好。我最初避免使用它,因为我认为它需要完全限定的路径,比如:“System.Web.Extensions,Version=3.5.0.0,Culture=neutral,PublicKeyToken=31BF3856AD364E35”,我以前遇到过这样的问题。无论如何,谢谢!