2011-09-06 146 views
1

我遇到了用户控制问题。我得到一个解析器错误:“无法加载类型'AsMyDotComSite.UserControls.GoogleAnalyticUC'。”我认为这是我的命名空间的一个问题,但我不确定谁能帮我解决问题?UserControl命名空间问题

我ASCX用户控件文件:

<%@ Assembly Name="Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" %> 
<%@ Assembly Name="MyDotComSite, Version=1.0.0.0, Culture=neutral, PublicKeyToken=9f4da00116c38ec5" %> 
<%@ Control Language="C#" AutoEventWireup="true" CodeBehind="GoogleAnalyticUC.ascx.cs" Inherits="AsMyDotComSite.UserControls.GoogleAnalyticUC"%> 

<!-- Google Analytics --> 

<script type="text/javascript"> 
    //GOOGLE CODE HERE 
</script> 

我后面的代码:

namespace AsMyDotComSite.UserControls 
{ 
    public partial class GoogleAnalyticUC : System.Web.UI.UserControl 
    { 
     protected void Page_Load(object sender, EventArgs e) 
     { 
      this.Visible = ConfigurationManager.AppSettings["IncludeGoogleAnalytics"] == "true" && 
    (SPContext.Current.FormContext.FormMode != SPControlMode.Edit && 
    SPContext.Current.FormContext.FormMode != SPControlMode.New); 
     } 
    } 
} 
+0

你在指令中注册的程序集是什么?你有没有尝试移动页面指令中的控件下方的程序集? –

+0

我使用'<%@注册TagPrefix =“Google”TagName =“GoogleAnalyltics”Src =“〜/ _controltemplates/MyDotComSite/GoogleAnalylticUC.ascx”%>注册,并且先试过,最后一次都不行。该文件在系统上存在。 – iPhoneDev85

回答

0

是不是只是一个错字?你有CodeBehind="GoogleAnalyticUC.ascx.cs",但你说你使用Src="~/_controltemplates/MyDotComSite/GoogleAnalylticUC.ascx"(在“Analytic”中多出一个“l”)注册它。除非您手动调整这些文件名,否则会解释错误 - 文件为GoogleAnalylticUC.ascxGoogleAnalylticUC.ascx.cs,但您尝试使用不存在的GoogleAnalyticUC.ascx.cs作为后面的代码。

+0

Ohh对不起,这是我的错字,我手打字不能复制和粘贴,因为它在不同的机器上。感谢虽然。 – iPhoneDev85