2016-08-11 6 views
0

でカスタムMVCのルートを設定しますwww.mysite.xyz/categoryName - ホーム/インデックス/ idをデフォルト言語( 'sr')で呼び​​出します www.mysite.xyz/en/categoryName - 言語 'en'でホーム/インデックス/ idを呼び出しますは、私は2つのコントローラを持っている固定部分

www.mysite.xyz/Post/postID - デフォルト言語( 'sr')でPost/Index/idを呼び出します。 www.mysite.xyz/en/Post/postID - 言語 'enでPost/Index/idを呼び出します'

私の' DefaultLocalized 'ルートはすでにデフォルトでカスタム言語ルート部分を持つで動作しますが、私のURLにはすべてのルート部分が含まれている必要があります:controller/action/id。私は、ユーザーに読みやすくするためにURLを簡素化したいだけです。

実際には、 'lang'を必須とする投稿用に作った: www.mysite.xyz/sr/Post/postID - しかし 'sr'を 'DefaultLocalized'ルートのようにデフォルトにしたいlangを 'sr'に設定する必要はありません...

私はすでに他の類似の質問からいくつかの回答を試みましたが、私はそれを動作させませんでした。

+0

[ASP.NET MVC 5 culture in route and url]の可能な複製(http://stackoverflow.com/questions/32764989/asp-net-mvc-5-culture-in-route-and-url) – NightOwl888

答えて

0

あなたは以下のようにルーティング属性を使用することができますURLを私のために働く

[Route("~/{cate}")] 
[Route("{lang}/{cate}")] 
public IActionResult Index(string lang, string cate) 
{ 
    return View(); 
} 

http://[host]/Mobile

http://[host]/en/Mobile

・ホープこのヘルプ!

+0

私はアクションパラメタとして 'lang'を使わないようにしましたが、私はこのポストを多言語サイト用にフォローしました:http://www.ryadel.com/en/setup-a-multi-language-website-using-asp-net- mvc/ – vpetrovic

+0

私は確信していませんが、ここであなたに役立つことがあります:http://afana.me/post/aspnet-mvc-internationalization.aspx –

関連する問題