MVC サイトマップで奇妙な問題に直面しています。現在、サイトマップ リンクは最大 3 レベルで、将来変更される可能性があります。問題は、次のレベルにいるときに中間レベルのサイトマップ リンクが機能しないことです (リンクをクリックするとエラーが発生します - Http 403.1 Forbidden)。URL が適切ではないことがわかりました。たとえば、Area と Controller の名前が、見逃したアクション名だけをポップアップ表示するだけです。
例: ホーム>会社>追加
[追加] 画面 (最終レベル) で、[ホーム] をクリックすると、localhost:xxxx/Home/index にリダイレクトされ、正常に動作します。
Company をクリックすると、localhost:xxxx/Company/Company にリダイレクトされ、そこから localhost:xxxx/Company/Company/index にリダイレクトされることが期待されます
次のエラーが発生します。
ローカルホスト:xxxx/会社/会社/
HTTP エラー 403.14 - 許可されていません Web サーバーは、このディレクトリの内容を一覧表示しないように構成されています。最も可能性の高い原因: • 要求された URL に対して既定のドキュメントが構成されておらず、ディレクトリの参照がサーバーで有効になっていません。
MVC.Sitemap の詳細は次のとおりです。
<?xml version="1.0" encoding="utf-8" ?>
<mvcSiteMap xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns="http://mvcsitemap.codeplex.com/schemas/MvcSiteMap-File-4.0"
xsi:schemaLocation="http://mvcsitemap.codeplex.com/schemas/MvcSiteMap-File-4.0 MvcSiteMapSchema.xsd">
<mvcSiteMapNode key="Home" title="Home" controller="Home" action="Index">
<mvcSiteMapNode key="Company" title="Company" area="Company" controller="Company" action="Index">
<mvcSiteMapNode key="CompanyAdd" title="Add Company" area="Company" controller="Company" action="Add" />
</mvcSiteMapNode>
</mvcSiteMapNode>
</mvcSiteMap>