仅在已发布的ASP.Net网站中显示未知的服务器标记

时间:2015-07-18 21:02:35

标签: asp.net peterblum

我发现ASP.Net网站发布并部署到远程主机后出现了一个奇怪的问题。我确实阅读了很多关于未知服务器标签的帖子,但是在开发环境中他们都有这个错误,这与我的情况不同。

它在部署的网站中出现以下ASP.Net错误,但从未在我的本地计算机上运行的同一网站中。

Unknown Server Tag 'drg:GridEditCommandColumn'

未知服务器标记用于PeterBlum GridEditCommandColumn类型,该类型在App_Code文件夹下的代码文件中定义。由于未知标记类型是在App_Code文件夹下定义的,因此它很难混淆为什么它不仅仅是在已发布的版本中注册。

使用dr:GridEditCommandColumn的用户控件已经对此标记进行了有效注册。

<%@ Register TagPrefix="drg" Namespace="PeterBlum.DES.TelerikWebUI" %>

问题为什么我只在已发布的版本中获取此错误,而从不在本地开发版本中?除了此页面之外,已部署的网站项目中的所有其他页面都可以正常工作,即使所有dll文件和页面文件都已正确部署。

Unknown Server Tag

更新1

我的托管服务提供商似乎有问题。我发布的文件非常完美,因为当我将同一组文件部署到另一个托管服务提供商时,它可以正常工作。我现在正在等待第一个托管服务提供商回来。可能是第一个托管服务提供商可能已应用的一些设置导致此操作并且App_Code.dll未被提取。

更新2

我终于能够解决这个问题了。这不是托管服务提供商的结果,而是我的最终目的。我在Wiktor Zychla的其中一条评论中为用户控件中的Register指令添加了一个'Assembly'属性,并从父页面中删除了原始的Register指令。

父页面中的原始Register指令没有Assembly属性。尽管如此,我很困惑为什么最初的Register指令在Microsoft的Azure服务器上运行得很好但在另一个第三方托管服务器上失败了。

<%@ Register TagPrefix="drg" Namespace="PeterBlum.DES.TelerikWebUI"  Assembly="App_Code"%>

0 个答案:

没有答案