我有一个MVC项目(.net fw 4.5),在web.config中配置了表单身份验证。从桌面设备浏览时,一切都很好;用户被重定向到登录视图。我安装了51Degrees'来自' Nuget'并按照其站点中的说明设置配置。此外,我在Home文件夹中添加了3个移动视图:Index.iphone,Index.android和Index.mobile我希望用户在从移动设备/平板电脑设备浏览时重定向到它们(取决于设备类型)
我的问题是,当从移动设备/平板电脑设备浏览时,首先调用登录视图,并且在成功登录后,始终会调用Index.mobile。我不希望加载登录视图,而是希望显示相应的视图(基于设备类型),其中包含相应的链接以下载应用程序(谷歌播放/应用商店)。
请你的帮助。
我删除了51Degrees配置文件中的重定向部分。 '检测器' HttpModule存在于我的Web配置中(Nuget在51 Degrees安装期间自动添加了这个。) 我的App_Data文件夹中有一个.dat文件。 我在Global.asax文件的Application_Start中为android,iphone和mobile添加了DefaultDisplayMode选项(如51Degrees网站所述)。
我错过了什么?
答案 0 :(得分:0)
查看MVC用法的一个很好的例子是示例目录中的GitHub repository。 BaseController的Initialise方法使用Device模型为设备设置相关属性,然后可以通过ViewBag访问该属性。因此,在您的登录视图中,您可以使用
的内容if( ViewBag.Device.PlatformName == "Android" )
{
return Redirect("/AndroidApp");
}
else if
...
else
{
return View();
}
这是你想要的那种吗?