天道酬勤0322
博客园 | 首页 | 发新随笔 | 发新文章 | 联系 | 订阅  | 管理

随笔:10 文章:0 评论:9 引用:0

ASP.NET MVC 学习第一天

今天开始第一天学习asp.net mvc,写的不是很好,高手不要喷,希望大家能一起进步学习。

好了,开始学习

新建项目,选择mvc 4应用程序

接下来选择基本,视图引擎当然要选择Razor,如果在选择aspx那我们就没必要用mvc喽

在这里我们简单说一下,项目模板如果选择空,这就需要我们自己进行导入很多文件,而选择基本vs会自动导入需要的文件,对mvc不熟的人,还是先老实一点吧。

后面两个Internet、Intranet一个是网络web,一个是内网的。没有用过,也不是很了解。移动选项应该是开发手机相关的,api是提供第三方的接口使用的(类似于web service,轻量级)。

点击确定,vs会给我们导入好多文件。好奇一下,可以看一下项目文件夹下的packages的文件夹,里面好多文件啊,包括我们之前学习的ef,还有最重要我们将要学习的mvc库。

看一下解决方案资源管理器

其中App_Data没有太大的用处,主要是可以将数据库放入其中,该文件夹下的内容是不准请求访问的。可删除

App_Start是网站启动的时候用到的一些配置信息文件,里面有个路由文件相对重要一些。这里面的内容在全局文件中会依次调用的。

简单的分析一下路由的配置,看下RouteConfig.cs里面的内容

 1 public static void RegisterRoutes(RouteCollection routes)2         {3             routes.IgnoreRoute("{resource}.axd/{*pathInfo}");4 5             routes.MapRoute(6                 name: "Default",7                 url: "{controller}/{action}/{id}",8                 defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }9             );
10         }

下面是我的请求

因为我没有写全路径,所以请求的是默认路径,那为什么报错了呢?那是因为我还没有写默认配置的home控制器和index方法。现在我们将该控制器和方法写好。

在Controlllers文件夹下添加控制器Home,注意控制器名称必须以Controller结尾

下面是vs给我们自动生成好的代码,遗憾的是vs只给我们生成了默认的index方法,但是没有给我们生成视图。控制器必须要继承自Controller

 1 using System;2 using System.Collections.Generic;3 using System.Linq;4 using System.Web;5 using System.Web.Mvc;6 7 namespace MvcApplication1.Controllers8 {9     public class HomeController : Controller
10     {
11         //
12         // GET: /Home/
13
14         public ActionResult Index()
15         {
16             return View();
17         }
18
19     }
20 }

我们在index方法上点击右键添加视图便可以添加视图了。但我先不这样做,我要改写这个方法,为了是先简化学习。稍后再学习视图部分。下面是我改后的方法,怎么样,很简单吧。

 1 using System;2 using System.Collections.Generic;3 using System.Linq;4 using System.Web;5 using System.Web.Mvc;6 7 namespace MvcApplication1.Controllers8 {9     public class HomeController : Controller
10     {
11         //
12         // GET: /Home/
13
14         public string Index()
15         {
16             return "The first mvc";
17         }
18
19     }
20 }

现在我们再用刚才报错那个地址访问以下吧,怎么样?结果出来了吧!

当然这个地址是默认配置的,标准的我们应该访问的是localhost:4348/home/index 这个地址。怎么样,哈哈,我们终于甩掉aspx这个恨人的尾巴了。

其实mvc会根据url路径去与配置的路由匹配。会将localhost:4348/home/index地址分拆,home匹配控制器,index匹配方法,我们不妨试试,如果你将HomeController改掉,这时访问就会报错了。我们也可以将路由配置中的url: "{controller}/{action}/{id}"中的controller与action调换一下,改为url: "{action}/{controller}/{id}",访问一下,是不是又出错了呢?因为这个路由解析地址的时候就会将Home当做方法index当成控制器,这样当然会报错了,但我们可以讲url访问地址写成localhost:4348/index/home,这样仍然可以访问了,是不是有些明白了呢?

刚从aspx那转过来的,可能这里不太好理解。画张图,简单理解一下

上面的方法中我返回了一个字符串,这就像我们aspx中的一般处理程序一样,所有的html代码都要自己写才能返回浏览器,而后面要学习的视图(项目中的Views文件夹下)就是html代码了。下面我们来看一下视图吧,我们在home控制器中添加一个test方法

1 public ViewResult test()
2 {
3       return View();
4 }

可以选择手动或自动两种方式添加视图,先介绍手动的方式,既然test方法是在home控制器中,所以在views文件夹中添加一个home文件夹,所有控制器中的方法视图都要views文件夹下相应的控制器名称文件下。在Views/Home/下添加视图,注意,视图名称约定要与方法名一样。之后会介绍怎么可以使方法与视图名称不一样。

下面就是vs自动生成的视图文件。

我们也可以选择自动生成视图的方法,那就是在方法名称上右键添加视图,同样可以生成视图文件,效果是一样的。

 1 @{2     Layout = null;3 }4 5 <!DOCTYPE html>6 7 <html>8 <head>9     <meta name="viewport" content="width=device-width" />
10     <title>test</title>
11 </head>
12 <body>
13     <div>
14
15     </div>
16 </body>
17 </html>

生成的文件名是cshtml后缀,奇怪吧。修改一下内容,然后访问一下吧。

@{Layout = null;
}<!DOCTYPE html><html>
<head><meta name="viewport" content="width=device-width" /><title>test</title>
</head>
<body><div>The first view of mvc</div>
</body>
</html>

好了,今天就这样吧,简单介绍一下,下面将要介绍razor视图引擎的语法。

分类: ASP.NET MVC
绿色通道: 好文要顶 关注我 收藏该文与我联系 

天道酬勤0322
关注 - 15
粉丝 - 7

+加关注

1
0
(请您对文章做出评价)

« 上一篇:Entity Framework 泛型使用
» 下一篇:ASP.NET MVC 学习第二天

发表于 2014-06-18 22:00 天道酬勤0322 阅读(334) 评论(4) 编辑 收藏

评论
#1楼
很喜欢你的博文,多谢
支持(0)反对(0)

eZplusy 评论于 2014-06-20 10:38    回复引用

#2楼[楼主]
@eZplusy
共同努力,共同学习,共同进步
支持(0)反对(0)

天道酬勤0322 评论于 2014-06-20 10:40    回复引用

#3楼
哥们 我最近也在学习mvc 不知道你是跟着什么书学习的呀?我在看asp.net mvc 高级编程,感觉比较抽象呀
支持(0)反对(0)

水击三千 评论于 2014-06-23 17:12    回复引用

#4楼[楼主]
@水击三千
书一般都是比较抽象的,一些专业术语,有时感觉较多的内容都抽象成一句话,有时一句话会让你一上午都是困惑状态,理解起来很难。个人感觉看书比较适合那种悟性较高,而且可以举一反三的人。我一般都是到网上找些文章,图文并茂的理解起来很容易,提问也比较方便,当然少不了动手,有些东西看上去很简单,等自己一上手就会觉得脑子一片空白。等整体有了一些了解,这时回头看看书,那就容易多了。
支持(0)反对(0)

天道酬勤0322 评论于 2014-06-23 17:23    回复引用

刷新评论刷新页面返回顶部
发表评论

昵称:

评论内容:
     

注销 订阅评论

[使用Ctrl+Enter键快速提交]

博客园首页博问新闻闪存程序员招聘知识库
最新IT新闻:
· 哈利波特主题公园“对角巷”正式开放!
· 计生办自愧不如!互联网公司下乡玩刷墙
· 腾讯回应“微信投注中大奖却被退款”:就中5元
· 百度百科将建书画信息频道 年底将达1万词条
· 俄推出采用自主操作系统的“超级平板电脑”
» 更多新闻...
最新知识库文章:

· 开源软件许可协议简介
· 程序员的自我修养(2)——计算机网络
· 你是否中了工程师文化的毒?
· 不安分的工程师
· 流量劫持——浮层登录框的隐患

» 更多知识库文章...

< 2014年7月 >
29 30 1 2 3 4 5
6 7 8 9 10 11 12
13 14 15 16 17 18 19
20 21 22 23 24 25 26
27 28 29 30 31 1 2
3 4 5 6 7 8 9

公告

昵称:天道酬勤0322
园龄:1年10个月
粉丝:7
关注:15

+加关注

搜索

常用链接

  • 我的随笔
  • 我的评论
  • 我的参与
  • 最新评论
  • 我的标签

随笔分类

  • ASP.NET(2)
  • ASP.NET MVC(3)
  • Entity Framework(5)

随笔档案

  • 2014年7月 (1)
  • 2014年6月 (9)

文章分类

  • ASP.NET

最新评论

  • 1. Re:ASP.NET 运行机制
  • @林沐若
    没写什么东西,都是分析源码,凑合看吧
  • --天道酬勤0322
  • 2. Re:ASP.NET 运行机制
  • 写得很棒
  • --林沐若
  • 3. Re:ASP.NET MVC 学习第一天
  • @水击三千书一般都是比较抽象的,一些专业术语,有时感觉较多的内容都抽象成一句话,有时一句话会让你一上午都是困惑状态,理解起来很难。个人感觉看书比较适合那种悟性较高,而且可以举一反三的人。我一般都是到网上找些文章,图文并茂的理解起来很容易,提问也比较方便,当然少不了动手,有些东西看上去很简单,等自己一......
  • --天道酬勤0322
  • 4. Re:ASP.NET MVC 学习第一天
  • 哥们 我最近也在学习mvc 不知道你是跟着什么书学习的呀?我在看asp.net mvc 高级编程,感觉比较抽象呀
  • --水击三千
  • 5. Re:ASP.NET MVC 学习第三天
  • @Oh Code !!
    不是大牛了,也是学习者,呵呵,一起进步
  • --天道酬勤0322

阅读排行榜

  • 1. Entity Framework 学习第一天(371)
  • 2. Entity Framework 泛型使用(339)
  • 3. ASP.NET MVC 学习第一天(334)
  • 4. ASP.NET MVC 学习第三天(272)
  • 5. ASP.NET MVC 学习第二天(259)

评论排行榜

  • 1. ASP.NET MVC 学习第一天(4)
  • 2. ASP.NET 运行机制(2)
  • 3. ASP.NET MVC 学习第三天(2)
  • 4. Entity Framework 学习第二天(1)

推荐排行榜

  • 1. Entity Framework 泛型使用(3)
  • 2. ASP.NET MVC 学习第一天(1)

Powered by: 博客园
模板提供:沪江博客
Copyright ©2014 天道酬勤0322

转载于:https://www.cnblogs.com/wanshutao/p/3834744.html

(转)ASP.NET MVC 学习第一天相关推荐

  1. ASP.NET MVC学习之路由篇(2)

    ASP.NET MVC学习之路由篇(2) 原文:ASP.NET MVC学习之路由篇(2) 继ASP.NET MVC学习之路由篇(1)后继续学习. 7.解决与物理路径的冲突 当发送一个请求至ASP.NE ...

  2. ASP.NET MVC学习资料 新增几个开源项目

    ASP.NET MVC学习资料 新增几个开源项目 ASP.NET MVC MSDN API:  System.Web.Mvc Namespace (暂无中文版):  http://msdn.micro ...

  3. ASP.NET MVC学习之控制器篇

    一.前言 许久之后终于可以继续我的ASP.NET MVC连载了,之前我们全面的讲述了路由相关的知识,下面我们将开始控制器和动作的讲解. ASP.NET MVC学习之路由篇幅(1) ASP.NET MV ...

  4. (asp.net MVC学习)System.Web.Mvc.UrlHelper的学习与使用

    上一次学习了HtmlHelper帮助类,这次我们学习一下UrlHelper帮 助类,看类名也都知道这个类是用来帮我们生成URL在ASP.NET MVC应用程序中.让我们来看看该类给我们带来了哪些方便的 ...

  5. ASP.NET MVC 学习6、学习使用Code First Migrations功能,把Model的更新同步到DB中

     参考:http://www.asp.net/mvc/tutorials/mvc-4/getting-started-with-aspnet-mvc4/adding-a-new-field-to-th ...

  6. ASP.NET MVC学习系列(一)-WebAPI初探

    由于即将要接手的新项目计划用ASP.NET MVC3来开发,所以最近一段时间一直在看相关的书或文章.因为之前在大学里也曾学习过MVC2开发,也做过几个简单的MVC2的小型测试项目,不过在后来工作以后主 ...

  7. asp.net mvc 学习

    Routing讲解: http://www.cnblogs.com/wangiqngpei557/p/3379095.html Filter讲解: http://www.cnblogs.com/ymn ...

  8. ASP.NET MVC 学习网站

    1.微软官方 官方网站 www.asp.net/mVC ASP.NET MVC QuickStart文档.http://quickstarts.asp.net/previews/mvc/ 视频教程(M ...

  9. 【ASP.NET MVC 学习笔记】- 07 使用 Entity Framework

    本文参考:http://www.cnblogs.com/willick/p/3304534.html 1.ORM(Object Relation Mapping)工具,是为了解决"关系数据库 ...

最新文章

  1. dblink oracle mysql,Oracle dblink的使用
  2. ios html 有白色边框,html – 仅在iPad上的桌子的单元格之间非常薄的白色边框
  3. SOC在安全方面的真实价值
  4. Maven学习 使用Nexus搭建Maven私服(转)
  5. /org/gnome/Terminal/Factory0: Could not connec
  6. RxJava2学习笔记(3)
  7. Android Studio在Git上将项目推送到新的Url地址中
  8. Codeforces 1196E Connected Component on a Chessboard
  9. linux mysql5.6.30 配置_Linux(Red Hat 6 32位) 下安装Mysql5.6.30
  10. 【机器学习】机器学习从零到掌握之八 -- 教你读懂决策树原理
  11. java复选框如何显示在文本雨_java – 在复选框的itemStatechanged事件上显示文本字段...
  12. HDOJ 1004:统计气球数
  13. 解决tex中参考文献出现[S.l.: s.n.]、[S.l.]、 [s.n.]问题
  14. win10系统无法自动修复启动解决方案
  15. 蓝桥杯——练习系统登录
  16. 【Markdown】希腊字母表
  17. android开发:NDK开发配置
  18. 国内哪家公司做网站最好?
  19. 浪潮服务器dhcp修改ip,dhcp服务器ip地址池修改
  20. Oracle 11gR2新特性--延迟段创建(Deferred Segment Creation)和exp不能导出空表

热门文章

  1. 微信小程序全面实战,架构设计 躲坑攻略
  2. 卡巴斯基网站被黑 引发安全风险
  3. 查询邮件服务器MX记录
  4. linux下修改文件查看样式(日期/文件大小)
  5. 百度网盘wine和linux区别,ubuntu16.04安装deepwine并安装QQ微信百度网盘等常用windows软件...
  6. Linux如何查看显存
  7. android 自定义canvas,android随笔之自定义View的Canvas用法
  8. 软骨病——成年人的缺钙病
  9. 微软人工智能-数据分析平台.md
  10. 小傻蛋的妹妹跟随小甲鱼学习Python的第三节003