《ASP.NET MVC企业实战》(一) MVC开发前奏
一、工具和方法
学到了一些没用过的工具和方法:
a)删除多余的using指令并排序:一个类头部的using一般会有很多用不到的,在完成类的编写后,可以右键选择”组织using”来删除没用的using并排序。
复制或删除一行代码时不用选中:可以直接把光标置于这一行,直接进行ctrl+c ctrl+x的整行操作。之前用过shift+delete也是整行剪切。
查找匹配的标记:成对出现的标记如{}、#region #endregion等,把光标放在其中一个上,使用ctrl+]可以跳转到符号对应的另一半,对于代码篇幅比较长的场合挺方便的。在html和js代码中试验也是可用的。
b)HttpRequester
用于测试接口,在WebAPI开发会用到,可以模拟各种类型的请求,并可自定义添加需要提交的请求报文和请求头信息等。
二、C#2.0的新语法特性
a)泛型(Generics):泛型将类型参数的概念引入.NET,类型参数的存在允许将类型的指定推迟到客户端代码声明并实例化改类或方法的时候。List<T>便是泛型的应用,T为类型的占位符,在实例化时再具体执行。泛型的主要优点为:编译时可以保证类型安全;因为不用做类型转换,可以有一定的性能提升。
b)泛型委托:如Del委托使用了泛型后,还可以自动识别Notify方法的重载。
c)泛型接口:这目前还没实际用过。
d)泛型方法:如果返回也是泛型,再加上涉及到泛型的转换的话,要中转为object且不保证能成功。感觉不好控制。
e)泛型约束:可以给泛型参数添加约束,可添加的约束类型有:
whereT:struct 值类型
whereT:class 引用类型
whereT:new() 参数必须有一个public的无参构造函数
whereT:<base class name> 派生自某个基类
whereT:<interface name>> 实现某个接口
whereT:U U为类型参数且T派生自U
写法为
f)部分类partial
可以让代码发布在不同的文件中,winform和webform的UI代码和逻辑代码就使用了partial,最终编译的时候会把多个部分合并起来。
g)匿名方法
匿名方法本质也是委托,是一种函数式编程的写法。函数式编程的最大特点就是把方法作为参数和返回值。既然是委托,就需要先有签名,匿名方法delCW2比常规的委托delCW1写起来简单,与js的函数写法类似,但还是比js麻烦一点。
学习资料:ASP.NET MVC 企业级实战 by 邹琼俊
《ASP.NET MVC企业实战》(一) MVC开发前奏的更多相关文章
- 《ASP.NET MVC企业实战》(三)MVC开发前奏
在上一篇“<ASP.NET MVC企业级实战>(二)MVC开发前奏”中跟随作者大概了解了一些C#3.0和3.5中的新特性.本篇继续以这样的方式来学习C#中的一些特性. 一.C#3. ...
- 《ASP.NET MVC企业实战》(二) MVC开发前奏
在上一篇“<ASP.NET MVC企业级实战>(一)MVC开发前奏”中记录了作者介绍的一些比较实用的VS使用方法以及C#2.0中添加的新特性.本篇继续大概了解之后版本的一些新特性. ...
- asp.net mvc企业实战技能汇总
- ASP.NET MVC企业级实战目录
电子书样稿 (关注最新进度,请加QQ群:161436236) ASP.NET MVC企业实战第1章 MVC开发前奏.pdf ASP.NET MVC企业实战第10章 站内搜索.pdf 已经好长一段时间没 ...
- ASP.NET MVC企业开发的基本环境
ASP.NET MVC企业开发的基本环境[资源服务器概念] 学完了ASP.NET MVC4 IN ACTION 六波以后 企业开发演习 标签:AaronYang 茗洋 EasyUI1.3.4 ...
- 【AaronYang第一讲】ASP.NET MVC企业开发的基本环境[资源服务器概念]
学完了ASP.NET MVC4 IN ACTION 六波以后 企业开发演习 标签:AaronYang 茗洋 EasyUI1.3.4 ASP.NET MVC 3 本篇博客地址:http://ww ...
- 关于《ASP.NET MVC企业级实战》
大家好,我的书<ASP.NET MVC企业级实战>已经出版啦,感谢大家过去的关注与支持!前言部分,出版的时候漏了部分内容,我这里将其贴出来. 本书提供源码和教学PPT课件!(源码在书中第3 ...
- 响应式Asp.net MVC企业网站源码
最近时间充裕,自己写了一个响应式MVC企业网站系统,用于回顾自己的MVC知识.网站源码后台和前台都采用响应式布局,可以适应不同的屏幕. 一.源码描述 响应式企业网站系统,前台和后台都采用了响应式布局, ...
- MVC 6 电商网站开发实战
[原创] ASP.NET 5系列教程 (六): 在 MVC6 中创建 Web API 标签: Web API MVC6 创建web API | 博主:powertoolsteam ASP.NE ...
随机推荐
- [CocoaPods]客户端加载第三方库
请先阅读另一篇博文铺垫知识基础:[CocoaPods]终端方式集成第三方库 客户端的Github地址:CocoaPods-app 点击下载客户端: [CocoaPods客户端] 安装下载的文件.软件界 ...
- 自动化测试之数据库操作pymysql
1.下载并导入pymysql 2.配置参数连接mysql db = pymysql.connect(**config) config = { 'host': str(host), 主机地址 'user ...
- centos部署flask
1.先安装uwsgi pip install uwsgi 2.在你的项目根目录下创建一个配置文件uwsgiconfig.ini(uwsgi支持多种配置文件格式,xml,ini,json等) [uwsg ...
- Linux - YUM包管理
简述 rpm是由红帽公司开发的软件包管理方式,使用rpm可以方便的进行软件的安装.查询.卸载.升级等工作. 但是rpm软件包之间的依赖性问题往往会很繁琐,尤其是软件由多个rpm包组成时. Yum(全称 ...
- python多进程没有锁队列范例
假设有一些任务要完成.为了完成这项任务,将使用几个过程.所以,将保持两个队列.一个包含任务,另一个包含已完成任务的日志. 然后实例化流程来完成任务.请注意,python队列类已经同步. 这意味着,我们 ...
- C# signtool error:no certificates were found that met all the given criteria 错误解决方案
程序运行时报错:signtool error:no certificates were found that met all the given criteria (汉译:符号工具错误:没有找到符合所 ...
- 课程四(Convolutional Neural Networks),第一周(Foundations of Convolutional Neural Networks) —— 1.Practice questions:The basics of ConvNets
[解释] 100*(300*300*3)+ 100=27000100 [解释] (5*5*3+1)*100=7600 [中文翻译] 您有一个输入是 63x63x16, 并 将他与32个滤波器卷积, 每 ...
- s3 api接口的调用
最近公司使用s3做文件存储服务器,因此在程序中需要调用s3的api,目前程序中使用了python和java版本的s3的api,简单做下记录,方便以后使用. 一.s3 api使用python版 1.安装 ...
- underscore.js源码解析【集合】
// Collection Functions // -------------------- // The cornerstone, an `each` implementation, aka `f ...
- MySQL 5.6 GTID Replication
一. MySQL 5.6引入了GTID的概念,那么GTID是何方神圣?其实也不复杂,就是一个全局事务标示符.使用GTID时,每次事务提交都会在binlog里生成1个唯一的标示符,它由UUID和事务ID ...