四个部件名称用户控制Web部件-SP 2007

时间:2011-11-05 23:43:38

标签: sharepoint

我创建了一个用户控件并通过将其添加到aspx页面进行测试,它运行良好。

我编写了用户控件,以便我可以在我的Sharepoint Portal中使用。

我创建了一个sharepoint webpart项目,并将以下代码添加到该方法中。

public class Nov059PM : System.Web.UI.WebControls.WebParts.WebPart
{
    Control _myControl;

    protected override void CreateChildControls()
    {
        this.Controls.Clear();

        _myControl = this.Page.LoadControl("~/usercontrols/Grid.ascx");

        this.Controls.Add(_myControl);
    }
}

我已将Grid.ascx放在C:\ inetpub \ wwwroot \ wss \ VirtualDirectories \ myportno \ usercontrols文件夹中。

我已经构建了webpart并进行了部署。

当我尝试使用它时,它说:

  

无法加载类型'Grid.Grid'。

     

来源错误:

     

第1行:<%@ Control Language =“C#”AutoEventWireup =“true”Inherits =“Grid.Grid”%>

我在想,继承应该是四个部分的名称。如何生成相同的四个部件名称?

3 个答案:

答案 0 :(得分:2)

您部署了.ascx文件,但忘记了程序集或包含Grid.Grid类的代码隐藏文件。

答案 1 :(得分:1)

如果您使用四个部分名称表示完全限定名称,则可以了解如何找到它on msdnhere

至于你的具体问题,Marek说检查你是否正在部署那个班级。

答案 2 :(得分:1)

您必须在

中添加完整的装配版本

&lt;%@ Control Language =“C#”Inherits =“Grid.Grid,Grid,Version = 1.0.0.0,Culture = neutral,PublicKeyToken = PUBKEYTOKEN ”%&gt; < /强>

将Grid.dll放入GAC。

之前你必须在Grid.dll中应用SNK。