私は次のコントロールアクションを持っています:
public ActionResult List(ListPostViewModel data)
{
return View(data);
}
ViewModelは次のようになります:
public class ListPostViewModel
{
public ListPostViewModel()
{
PLS = new PostListSettings();
}
public PostListSettings PLS;
}
そしてこれはViewModelの他の部分です:
public class PostListSettings
{
public PostListSettings()
{
P = 1;
CP = int.Parse(ConfigurationManager.AppSettings["AmountOfPostsPerPage"].ToString());
}
/// <summary>
/// Amount of ads on one page
/// </summary>
public int CP { get; set; }
/// <summary>
/// CurrentPage
/// </summary>
public int P { get; set; }
}
以前のプロジェクトでは、次のようなURLを送信できました:http://MyComputer/?PLS.P=2
そしてListPostViewModel.PLS.Pを2に設定しましたが、新しいASP.NET MVC 4ソリューションでは機能しませんか?なんで?
私が得た唯一のルートはデフォルトのものです:
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Post", action = "List", id = UrlParameter.Optional }
);