【发布时间】:2010-12-10 16:11:06
【问题描述】:
我正在尝试使用 System.Web.UI.TemplateControl.LoadControl 为 SharePoint 应用程序构建模板化 Web 部件,但在引用外部程序集的控件时遇到问题。
我有一个前几行这样的用户控件:
<%@ Control Language="C#" ClassName="MyControl" %>
<%@ Assembly Name="AjaxControlToolkit" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="cc1" %>
Web 部件派生自实现模板的基本 Web 部件和一些其他实用程序,这些实用程序位于名为“MyWebParts”的程序集中(例如),而派生的 Web 部件类位于“MyProject”中。 MyProject 引用了“MyWebParts”(显然)和“AjaxControlToolkit”,但“MyWebParts”没有引用“AjaxControlToolkit”。在运行时,当模板化的 Web 部件尝试加载用户控件(“controltemplates”SharePoint 根文件夹中的 .ascx 文件)时,它会调用它在程序集中继承的基本方法,并引发 HttpParseException,表明它不能t 加载所需的程序集。 EventViewer 确认有问题的程序集是 AjaxControlToolkit。
我尝试将 AjaxControlToolkit 程序集添加到共享点的 web.config 中,它位于 GAC 中,但无济于事。
任何人都知道如何在不引用“MyWebParts”程序集中存在的每个程序集的情况下做到这一点?
【问题讨论】:
标签: asp.net sharepoint user-controls web-parts