2011-09-06 153 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