类型MySiteName.SiteMap是否存在于x.dll和y.dll中?

时间:2013-12-26 12:07:56

标签: c# asp.net dll sitemap

确切的问题是,当我希望如下所示使用SiteMap时,我收到错误

imgBtnPrevious.PostBackUrl = SiteMap.CurrentNode != null ? (SiteMap.CurrentNode.PreviousSibling != null ? SiteMap.CurrentNode.PreviousSibling.Url : "") : "";

imgBtnNext.PostBackUrl = SiteMap.CurrentNode != null ? (SiteMap.CurrentNode.NextSibling != null ? SiteMap.CurrentNode.NextSibling.Url : "") : "";



Error ---> The type 'MySiteName.SiteMap' exists in both 'App_Web_3jyv5kio.dll' and 'App_Web_unds4iwr.dll'   

如何永久解决这个问题,不应再发生这种情况。删除临时文件是一个手动解决方案,只有我认为它会解决它,它会再次出现?

更新

我认为它与asp.net服务器实例有关,我停止它然后重新启动它,但现在不同的错误 - > 'MySiteName.SiteMap'不包含'CurrentNode'的定义

2 个答案:

答案 0 :(得分:0)

您的机器上肯定出现了问题,因为这些临时组件会自动清理(在正常情况下)。

因此,我会说你杀了那些文件就没事了。

如果问题出现,您需要跟踪发生的情况。 (快速注意:如果你在IIS中托管你的应用程序,那么很可能在那里出现问题,并且代码被重新编译,即使这个过程没有被回收,在正常情况下也不会发生这种情况。)

答案 1 :(得分:0)

我找到了有关'MySiteName.SiteMap' does not contain a definition for 'CurrentNode'

的更新问题的解决方案

问题是该网站有一个名为SiteMap.aspx的页面,因此它的相应类正在这里被选中。因此,为了避免这种冲突,我们必须明确定义类的名称空间,以便简单地选择

System.Web.SiteMap.CurrentNode

现在这将引用网站的SiteMap