【问题标题】:Umbraco friendly URL not working after manully change the database手动更改数据库后,Umbraco 友好 URL 不起作用
【发布时间】:2011-02-24 13:41:54
【问题描述】:

根据要求,我写了一些代码,基本上改变了文档的日期(umbraco 博客的文档)。

我已经更改了每个可以找到日期的地方,并且使所有日期都可以正常显示,并且我已经调整了路径以使其正确。

现在,umbraco.library.NiceUrl(id) 中指示的 url 不起作用,但以前的 url 仍然有效....只是想知道是否有任何文件“临时”或“永久”存储友好 url映射?如果是这样,我该如何修改?!

顺便说一句,umbraco 缓存文件存储在哪里?

顺便说一句,umbraco 4.0.3版,重启网站还是不行,修改文档标题会导致旧url的标题变了,但是新的url还是不行……

【问题讨论】:

    标签: c# asp.net friendly-url umbraco umbraco-blog


    【解决方案1】:

    进度报告和可能的解决方案。

    在 /config/umbracoSettings.config 中

    禁用缓存将完成这项工作, 基本上:

    假的

    这有点矫枉过正,但它暂时解决了我的问题...... (以上也需要重启网站,好像只禁用持久化到磁盘, url 本身仍然缓存在 Hashtable 中,请参阅: umbraco.presentation.requestHandler.cs)

    好的,从文档中找不到,调试 umbraco 给了我以下工作代码:

    umbraco.library.UpdateDocumentCache(docId);
        var elem = umbraco.content.Instance.XmlContent.GetElementById(docId.ToString()); 
       umbraco.content.Instance.XmlContent.GetElementById(origParentId.ToString()).RemoveChild(elem);    
    
    umbraco.content.Instance.XmlContent.GetElementById(parentId.ToString()).AppendChild(elem);
    

    【讨论】:

      【解决方案2】:

      Umbraco 仅在您重新发布整个网站或创建新内容时构建 URL。如果您右键单击内容区域中最顶部的内容节点,然后选择“重新发布所有”并按照应该重建整个 url 缓存的弹出窗口进行操作。

      如果这能解决问题,请告诉我。

      【讨论】:

      • 我已经尝试过重新发布,并没有真正重新构建缓存或内存中的 xml(有时)这是我所期望的行为,没有检查源代码,我的上述解决方案好用,就是有点脏……
      猜你喜欢
      • 1970-01-01
      • 2014-03-02
      • 2015-03-29
      • 1970-01-01
      • 2013-05-29
      • 2014-01-25
      • 1970-01-01
      • 1970-01-01
      • 2013-08-14
      相关资源
      最近更新 更多