我尝试登录sitecore桌面时出现服务器错误

时间:2012-03-23 13:47:57

标签: asp.net sitecore sitecore6

试图解决这个问题很久以来。虽然我知道控制类型不匹配,但我无法解决。任何人都可以帮忙吗?

基类包含字段'FailureText2',但其类型(Sitecore.Web.UI.HtmlControls.Literal)与控件类型(System.Web.UI.WebControls.Literal)不兼容。

Line 136: </asp:Login>
Line 137: <div id="LoginText">
Line 138: <asp:Literal ID="FailureText2" runat="server" />
Line 139: </div>
Line 140: <div id="LoginOptions">

我正在使用sitecore 6.4

提前致谢。

3 个答案:

答案 0 :(得分:2)

我冒昧地猜测你的.designer文件让控制混乱了。查看您的[controlname].designer.cs文件。找到说:

的行
protected global::Sitecore.Web.UI.HtmlControls.Literal FailureText2;

并将其替换为

protected global::System.Web.UI.WebControls.Literal FailureText2;

如果不是这种情况,则需要发布更多代码。

答案 1 :(得分:2)

我经常遇到这个问题。我建议从Sitecore开发者网络获取基本安装的zip文件,并将整个“Website / bin”目录复制到您的Web根目录的bin目录中。

除此之外,请确保您在解决方案中使用的任何Sitecore dll都设置为“Copy Local = false”。

答案 2 :(得分:0)

我希望你此时已经解决了这个问题。从6.4升级到6.5时,我有类似的问题。 Sitecore已使用自己的自定义控件(Label)替换了表格布局中的文本项,因此页面显示为已损坏。

他们添加了自定义命名空间来注册其控件。这是合乎逻辑的事情,因为他们可以更好地控制渲染和其他业务。

    <%@ Register Assembly="Sitecore.Kernel" 
Namespace="Sitecore.Web.UI.HtmlControls" TagPrefix="sc" %>

例如,Password:字面值已替换为<sc:Literal runat="server" Text="Password:" />

升级过程可能需要注意这一点,但在我的情况下,当我在开发人员计算机上升级到6.5时,这些文件被TFS锁定。解决方案是下载包含站点的干净6.5 zip并与本地版本进行比较。

我已经在Dev版本上替换了很多文件,现在一切正常。我希望有一天这对某人有用。