MVC基础知识学习总结

原创 2015年11月18日 21:48:34

先看下**.cshtml文件里的

<p>
    请输入用户名和密码。如果您没有帐户,请 @Html.ActionLink("注册", "Register",new {TRTR=3})。
</p>
上面这个@Html.ActionLink("注册","Register",new {TRTR=3})会被解析成一个超链接的形式
<a href="/Account/Register/3">注册</a>
下面问题来了,我们改怎么获取这个3呢?
如果上面的代码改这样的:@Html.ActionLink("注册","Register",new {page=3}),我们想要获取这个3的话,只需要用@Request.QuestString["page"]就可以得到这个3了。但是由于上面的参数是TRTR,这个TRTR与MapRoute里面的trtr是一样的,所以是默认的。所以浏览器会直接解析成<a href="/Account/Register/3">注册</a>。那么获取默认的路由id怎么获取呢?
1.<pre class="csharp" name="code">public ActionResult Register(int id)  //这个id就是默认的3 
  {  
  ViewData["id"] = id;   
  return View();  
  }  

然后在cshtml文件里直接用ViewData["id"]。当然这里用ViewBag.id=id也可以。
2.<label>@Request.RequestContext.RouteData.Values["TRTR"];</label><br/>

这样也可以获取到3
3 <label>@ViewContext.RouteData.Values["trtr"];</label><br/>
  <label>@ViewContext.RouteData.Values["action"]</label><br />
  <label>@ViewContext.RouteData.Values["controller"]</label><br />
这样也可以直接获取默认的路由Controller,action,还有后面的参数3

注册路由的文件里的:Global.asax.cs文件里的代码:

 public class MvcApplication : System.Web.HttpApplication
    {
        public static void RegisterGlobalFilters(GlobalFilterCollection filters)
        {
            filters.Add(new HandleErrorAttribute());
        }

        public static void RegisterRoutes(RouteCollection routes)
        {
            routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

            routes.MapRoute(
                "Default", // 路由名称
                "{controller}/{action}/{trtr}", // 带有参数的 URL
                new { controller = "Home", action = "Index", trtr = UrlParameter.Optional } // 参数默认值
            );

        }

        protected void Application_Start()
        {
            AreaRegistration.RegisterAllAreas();

            // 默认情况下对 Entity Framework 使用 LocalDB
            Database.DefaultConnectionFactory = new SqlConnectionFactory(@"Data Source=(localdb)\v11.0; Integrated Security=True; MultipleActiveResultSets=True");

            RegisterGlobalFilters(GlobalFilters.Filters);
            RegisterRoutes(RouteTable.Routes);
        }
    }



 

相关文章推荐

MVC基础知识整理

ActionResult子类演示     1、ViewResult() -->action方法中要想返回视图,则要使用ViewResult (MVC开发中用的最多)     2、ContentResu...

用MVC模式实现简单用户登录注册功能

Model2模式 Jsp+Servlet+JavaBeanMVC:开发模式M:Model 模型层 —-> JavaBeanV:View 视图层 —-> JspC:Controller 控制层 —->...

SpringMvc学习心得(一)浅谈spring

该篇文章是本人学习springmvc框架的一些心得,暂时写到spring解析xml文件以及beandefinition构成这一部分,等待后期的完善...

mvc基础知识

  • 2014年03月26日 00:02
  • 306KB
  • 下载

java 框架基础知识(9)----HTTP报文-->MVC

学习Web开发不好好学习HTTP报文,将会“打拳不练功,到老一场空”,你花在犯迷糊上的时间比你沉下心来学习HTTP的时间肯定会多很多。HTTP请求报文解剖HTTP请求报文由3部分组成(请求行+请求头+...

java 框架基础知识(8)----国际化信息-->MVC

假设我们正在开发一个支持多国语言的Web应用程序,要求系统能够根据客户端的系统的语言类型返回对应的界面:英文的操作系统返回英文界面,而中文的操作系统则返回中文界面——这便是典型的i18n国际化问题。对...

C语言学习必备_基础知识点总结

  • 2013年01月26日 18:56
  • 86KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:MVC基础知识学习总结
举报原因:
原因补充:

(最多只允许输入30个字)