EpiServer 8.0を使用すると、C#クラス内のPageDataオブジェクトから「フレンドリーな」URLを取得する必要があります。 URLを変換しないと、内部リンクは "localhost/friendly-link"ではなく "localhost/link/[guid] .aspx"のように見えます。私が提案するオンラインの記事を見てきました、次のようにステートメントを使用せずに、ここで EpiServer PageDataオブジェクトからフレンドリーなURLを抽出するにはどうすればよいですか?
は、私が現在持っているコードです:'System.Web.Mvc.UrlHelper' does not contain a definition for 'ContentUrl' and no extension method 'ContentUrl' accepting a first argument of type 'System.Web.Mvc.UrlHelper' could be found (are you missing a using directive or an assembly reference?)
var urlHelper = ServiceLocator.Current.GetInstance<UrlHelper>();
var friendlyUrl = urlHelper.ContentUrl(currentPage.Link);
をしかし、私はこれをしようとすると、Visual Studioは、次のエラーを返します。使用されている名前空間を確認するのは簡単です。
var urlHelper = EPiServer.ServiceLocation.ServiceLocator.Current.GetInstance<System.Web.Mvc.UrlHelper>();
var friendlyUrl = urlHelper.ContentUrl(myPage.Link);
ContentUrlを作成するプロジェクトの参照がありません。または、PageDataオブジェクトからフレンドリーなURLを取得するために使用できる代替コードがありますか?ご協力いただきありがとうございます。
このEricに感謝します。 –
@KenPalmerご参考までにサンプルを少し更新しました –