2010-04-07 41 views
5

您可以將文檔放在SP中,但是,當它重新組織文件夾時,我應該如何處理舊鏈接?如何識別SharePoint中的文檔

有沒有一種方法來識別文檔,而不是使用URL來使用文檔的路徑?我需要永久鏈接:http://mysharepoint/doc-123,其中123是文檔標識符。

我需要不依賴文檔所在文檔發佈的文檔的URL。有解決方案嗎?

回答

0

您可以使用URL Shortener解決方案並將其與SharePoint(Designer)工作流或事件接收器結合使用。

我曾參與過一個product,它可以與SharePoint結合使用,並且可以通過Web服務,工作流以及用戶界面使用。

由於您的需求很具體,您可能需要做一點額外的編碼。如果您無權訪問Visual Studio,或者更願意使用SharePoint Designer工作流程,而不是查看Workflow Power Pack

+0

好,但還是有一個問題:縮短網址取決於文件發佈的位置?正如我在您的網站上看到的(產品頁面上的第二張截圖)原始URL取決於路徑「PDFConverterTest/Shared Documents/Forms/AllItems」 如果我將文檔移動到另一個站點(例如WordConverterTest),您的方法仍然允許打開該文檔使用http://go.local/x3e? – 2010-04-07 08:48:31

+0

您需要更新現有短網址的位置,這是您可以執行的操作。這將取決於你確保這個代碼在文件被移動時執行,我不知道哪個進程控制這個。或者,您可以將短網址保存在文件的隱藏字段中,以便您可以定期迭代文件並將關聯的短網址更新到新位置。 – 2010-04-07 17:05:07

+0

我明白了,這是我不想跟蹤和花費時間的東西。 – 2010-04-08 08:59:00

1

SP2010將爲每個可用於內置重定向器服務的文檔提供唯一的每個網站集標識符。

+0

謝謝,因此以前的SP版本無法做到這一點?這是對的嗎? – 2010-04-08 09:00:32

0

您可以創建包含映射到文件的數據庫表(您需要在文件更改時更新) 表中應包含要路由的URL | url destination 然後你可以實現一個HttpModule,它讀取那個URL然後重定向到表中的那個,但是這會花費你的整體性能,所以你可以創建一個模式,只有當它匹配模式時纔會這樣做。

0

在SharePoint 2007中,您可以創建一個將文檔的唯一ID作爲查詢參數的重定向頁面。使用此ID獲取文檔SPContext.Current.Web.GetFile(id),並使用文件url重定向響應。