3

EPiServer PageFiles システムの仕組みについて考えています。グローバル ファイルを取得すると、正しいディレクトリを取得するのは簡単です。次のように記述します。

var dir = VirtualPathHandler.Instance.GetDirectory("~/Global/myfolder/", true)

しかし、PageFiles フォルダーからファイルを取得したい場合は、注意が必要です。EPi バックオフィス アップロードのパスは であると表示されPageFiles/myfolderていますが、これはフォルダーを返しません。

var dir = VirtualPathHandler.Instance.GetDirectory("~/PageFiles/myfolder/", true)

これで、ファイルがページごとに異なる方法で保存されていることがわかります。1 つのページにはパスが/PageFiles/361/myfolder/あり、別のページにはパスがあります/PageFiles/65/myfolder/。私がしたいのは、書くことができることだけです

var dir = VirtualPathHandler.Instance.GetDirectory("~/PageFiles/myfolder/", true)

しかし、私が書かなければならないフォルダを取得するには(たとえば)

var dir = VirtualPathHandler.Instance.GetDirectory("~/PageFiles/65/myfolder/", true)

その中のすべてのファイルにアクセスできるように PageFiles フォルダーを取得する正しい方法は何ですか?

ところで、これは EPiServer 6.0 です

4

1 に答える 1

4

PageData オブジェクトで GetPageDirectory メソッドを試してください

http://sdk.episerver.com/library/cms6/html/M_EPiServer_Core_PageData_GetPageDirectory.htm

于 2013-04-11T11:48:38.647 に答える