Asp.Net MVC学习笔记(一)谨记点
来源:互联网 发布:雅思大作文 知乎 编辑:程序博客网 时间:2024/05/16 06:48
写了好几年的VB代码。去年开始用C#写了一些服务类的功能。最近几天开始学习Web方向的东东。
VB的方便,估计是其它语言比不了了。这系列文章主要记录一些比较不好理解的问题供回忆。思想变化是一个很宝贵的过程。
另外,推荐一个QQ群。 134546850,群主自创了12306的抢票软件,猎豹浏览器的抢票插件也是他写的。
我学习的方法是先让代码跑起来,后面再理解它的意义。编程只是一个工具
工具:VS2010。
一切学习都是从新建“VS2010的ASP.NET MVC 2 Web 应用程序”开始搞起。
一:路由
没去理解它。但我在写了几个界面后,发现要测试新界面时,都得点几次才能到达想测试的界面。最近就通过改路由的方式运行起来就到了新界面。
原代码:
<span style="white-space:pre"></span> routes.MapRoute( "Default", // 路由名称 "{controller}/{action}/{id}", // 带有参数的 URL new { controller = "Home", action = "Index", id = UrlParameter.Optional } // 参数默认值 );此时,运行起来时,会到达Home控制器的Index方法。我修改如下:
<span style="white-space:pre"></span> routes.MapRoute( "Default", // 路由名称 "{controller}/{action}/{id}", // 带有参数的 URL //new { controller = "Home", action = "Index", id = UrlParameter.Optional } // 参数默认值 new { controller = "SysUserHospital", action = "AddHospital", id = "4a1b8415-f365-41ef-9d83-0dae0c0ba71a" } // 参数默认值 );现运行时,就到了SysUserHospital控制器的AddHospital方法,但这个方法有个参数,所以把初始值也加上。
这里也有一个最恶搞的地方。路由这里的最后一个参数是id,AddHospital方法的参数名也得写为id.否则值传不过去,无法理解。关于命名的问题在好多地方都有体现。再举一例:
<tr> <td> <%: Html.ActionLink("Cancel", "CancelAccept", new { RID = item.RID }) %> </td> <td> <%: item.RID %> </td> <td> <%: item.Hospital.City.Name %> </td> <td> <%: item.Hospital.Name%> </td> </tr>这里的参数是RID,对应的控制器处,参数也必须写成RID,你写成ID试试,传不过值来。日了狗了
<span style="white-space:pre"></span>public ActionResult CancelAccept(Guid RID) { SysUserHospital sysuserHospital = dao.getItemByRID(RID); if (sysuserHospital == null) { return View(); } dao.Delete(sysuserHospital); return Index(sysuserHospital.SysUser); }
二:运行方式
Model View Controller
View负责展示内容,它控制页面格式,数据由Controller提供。
Controller负责页面的跳来跳去加数据验证。
Model是数据本身。我不习惯用EF,以我目前的水平好多东西不可控,还得再学。自己写过一些代码生成器,稍为改改就生成了一堆堆的Model。
运行起来后,先跑步到Controller的某个方法,这个方法组织好Model再传给View,由View来展示。
用户在View上操作时,再把操作内容以参数形式传递给Controllser,来完成当前动作。
三:JavaScript
我以为这个东东是默认引用的,没想到还得手动添加引用。算是先入为主了,还拿去问人了。
<p> <button id="save">Save</button> </p> <script src="../../Scripts/jquery-1.4.1.min.js" type="text/javascript"></script> <script type="text/javascript" language="javascript"> $(document).ready(function () { $("#save").click(function () { alert("ok"); }); }); </script>一开始没加引用,点了按钮没反应,就懵了。加了才响应了我的号召。
四:Model
没有用EF,自己写的Model,在展示数据时外键字段展示不出来。
比如SysUser有一个SexID,如果展示,肯定想展示他的男女,但展示出来的是1,2.
于是把Sex这个类当成了SysUser的一个属性,在得到SysUser时,给Sex属性赋值。在展示数据时就可以用SysUser.Sex.Name来显示性别了。
先打住一下。
- Asp.Net MVC学习笔记(一)谨记点
- 学习ASP.NET MVC5框架揭秘笔记-ASP.NET MVC路由(一)
- 学习ASP.NET MVC5框架揭秘笔记-ASP.NET MVC路由(一)
- 学习ASP.NET + MVC(一)
- ASP.Net MVC学习(一)
- Asp.net MVC 学习笔记
- ASP.NET MVC学习笔记
- asp.net MVC学习笔记
- ASP.NET MVC 学习笔记
- ASP.NET MVC学习笔记
- ASP.NET MVC学习笔记
- ASP.net mvc学习笔记
- Asp.net MVC 学习笔记
- .NET MVC学习笔记(一)
- 学习ASP.NET MVC5框架揭秘笔记-ASP.NET MVC是如何运行的(一)
- asp.net 学习笔记(一):简介
- ASP.NET学习笔记(一)
- Asp.net MVC学习日记一(显示图片)
- 编程小练习
- 计算机程序的构造和解释 练习 2.1
- ThreadLocal用法理解
- DragView(二)
- BCM56445流量统计功能开发总结
- Asp.Net MVC学习笔记(一)谨记点
- 栏目跳转 用iframe加载页面 ajax加载页面在div中
- SSL peer certificate or SSH remote key was not OK
- 【codeforce】-#669A-Little Artem and Presents(数学,找规律)
- 编程小练习
- Tomcat提示指定的服务未安装Unable to open the service 'tomcat'
- 欢迎使用CSDN-markdown编辑器
- javax.el.PropertyNotFoundException: Property 'emailaddress' not found on type ja
- Elasticsearch IK 同义词