私のウェブサイトはTwitterで応答しますBootstrapそしてデスクトップページはタブレットとデスクトップ用に設計されています。aspnet.friendlyUrlsはタブレットデバイスをモバイルと見なし、それらを「.Mobile.aspx」に相当するものに送信します。この動作を無効にして、タブレットをデスクトップページに保持しますか?
2週間後、まだawnserもコメントもありませんか?デフォルトで新しいVS2013Asp.Netプロジェクトで配布されている場合でも、実際にaspnet.FriendlyUrlsを使用しているのは私だけですか?
これをオフにする設定はありませんが、Site.Mobile.MasterファイルとViewSwitcherファイルを削除することで無効にできます。
次のファイルは不要になりました。
Site.Mobile.Master
-Site.Mobile.Master.cs
-Site.Mobile.Master.designer.cs
ViewSwitcher
-ViewSwitcher.cs
-ViewSwitcher.ascx.cs
私の答えを単純化してくれた@fortboiseに感謝します
削除しても問題は解決しません。方法は、TrySetMobileMasterPageをオーバーライドすることです。
ステップ1:クラスを作成する
public class MyWebFormsFriendlyUrlResolver : Microsoft.AspNet.FriendlyUrls.Resolvers.WebFormsFriendlyUrlResolver
{
protected override bool TrySetMobileMasterPage(HttpContextBase httpContext, Page page, String mobileSuffix)
{
if (mobileSuffix == "Mobile")
{
return false;
}
else
{
return base.TrySetMobileMasterPage(httpContext, page, mobileSuffix);
}
}
}
App_Start/RouteConfigに移動し、次のように設定した後:
public static void RegisterRoutes(RouteCollection routes)
{
var settings = new FriendlyUrlSettings();
settings.AutoRedirectMode = RedirectMode.Permanent;
routes.EnableFriendlyUrls(settings, new MyWebFormsFriendlyUrlResolver());
}