C#高级编程42章 MVC】的更多相关文章

42.1 ASP.NET MVC 路由机制 网络介绍链接 按照传统,在很多Web框架中(如经典的ASP.JSP.PHP.ASP.NET等之类的框架),URL代表的是磁盘上的物理文件.例如,当看到请求http://example.com/albums/list.aspx时,我们可以确定该站点目录结构中含有一个albums文件夹,并且在该文件夹下还有一个list.aspx文件. URL和文件系统之间这种一一对应的关系并不适用于大部分基于MVC的Web框架,如ASP.NET MVC.一般来说,这些框架…
译文,个人原创,转载请注明出处(C# 6 与 .NET Core 1.0 高级编程 - 38 章 实体框架核心(上)),不对的地方欢迎指出与交流. 章节出自<Professional C# 6 and .NET Core 1.0>.水平有限,各位阅读时仔细分辨,唯望莫误人子弟. 附英文版原文:Professional C# 6 and .NET Core 1.0 - 38 Entity Framework Core ------------------------------- 本章内容 En…
译文,个人原创,转载请注明出处(C# 6 与 .NET Core 1.0 高级编程 - 38 章 实体框架核心(下)),不对的地方欢迎指出与交流. 章节出自<Professional C# 6 and .NET Core 1.0>.水平有限,各位阅读时仔细分辨,唯望莫误人子弟. 附英文版原文:Professional C# 6 and .NET Core 1.0 - 38 Entity Framework Core 本章节译文分为上下篇,上篇见: C# 6 与 .NET Core 1.0 高级…
译文,个人原创,转载请注明出处(C# 6 与 .NET Core 1.0 高级编程 - 39 章 Windows 服务(下)),不对的地方欢迎指出与交流. 章节出自<Professional C# 6 and .NET Core 1.0>.水平有限,各位阅读时仔细分辨,唯望莫误人子弟. 附英文版原文:Professional C# 6 and .NET Core 1.0 - Chapter 39 Windows Services 本章节译文分为上下篇,上篇见:C# 6 与 .NET Core…
C#高级编程9-第12章 动态语言扩展 dynamic t = new ExpandoObject(); t.Abc = "abc"; t.Value = ; Console.WriteLine(t.Abc); t.Abc = "; Console.WriteLine(t.Abc); dynamic动态类型的值是可读可写的,它是编译型语言,而Javascript是解释性语言.因此JavaScript定义后可以引用它.而dynamic定义后,无法引用它,无法获知它的类型是什么.…
译文,个人原创,转载请注明出处,有不对的地方欢迎指出与交流. 英文原文:Professional C# 6 and .NET Core 1.0 - 37 ADO.NET ------------------------------- 本章内容 连接数据库 执行命令 调用存储过程 ADO.NET对象模型 Wrox.com 网站关于本章的源代码下载 wrox.com中本章源代码下载位于"Download Code"选项卡www.wrox.com/go/professionalcsharp6…
译文,个人原创,转载请注明出处(C# 6 与 .NET Core 1.0 高级编程 - 39 章 Windows 服务(上)),不对的地方欢迎指出与交流. 章节出自<Professional C# 6 and .NET Core 1.0>.水平有限,各位阅读时仔细分辨,唯望莫误人子弟. 附英文版原文:Professional C# 6 and .NET Core 1.0 - Chapter 39 Windows Services --------------------------------…
委托.lamdba表达式和事件 1.引用方法 函数指针是一个指向内存位置的指针,不是类型安全的.无法判断实际指向.参数和返回类型也无从知晓..NET委托是类型安全的.定义了返回类型和参数类型,不仅包含方法引用,还可以包含多个方法引用. 2.委托 使用方法作为参数进行传递,必须把方法细节进行封装到一个新类型的对象中,即委托.委托是一种特殊类型的对象.我们之前定义的对象都包含数据.而委托包含的是多个方法的地址. 声明委托 委托使用delegate声明.通过指定返回类型.签名以及参数类型进行创建. 创…
异步编程 1)异步编程的重要性 在C#5.0中提供了关键字:async和await 使用异步编程后台运行方法调用,程序的运行过程中就不会一直处于等待中.便于用户继续操作. 异步编程有3种模式:异步模式.基于事件的模式.基于任务的模式. 基于任务的模式就使用了关键字. 2)异步模式 public delegate int AddHandler(int a,int b); public class 加法类 { public static int Add(int a, int b) { Console…
C#与NET的关系 C#编写的所有代码必须使用.NET FrameWork运行 C#是一种语言,但它本身不是.NET的一部分 C#一些特性,.NET不支持,.NET一些特性,C#不支持 公共语言运行库 .NET核心是运行库CLR,CLR运行的代码称为托管代码 CLR编译的步骤是:将源代码编译成IL,然后将IL编译为平台专用代码 平台 C#完整实现只能在Windows平台下,部分已经实现了跨平台 1)性能 IL是即时编译的,Java是解释性的,IL编译时只编译修改的部分 2)互操作性 IL编译的中…
32.2高效地使用连接 sqlConnection类是针对sql的,而OleDbConnection 是针对其他比如access的,另外还有odbcConnection是针对odbc的,sql的访问优势就在于它可以调用高性能的sql控制访问语句! 32.2.3 事务 如使用Transactions类须引用下面文件(在不支持务事的数据库时,可以用以下操作) C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFra…
第一章 UNIX基础知识 1.2 UNIX体系结构   从严格意义上说,可将操作系统定义为一种软件,它控制计算机硬件资源,提供程序运行环境.我们将这种软件称为内核(kernel),因为 它相对较小,且位于环境的核心.内核的接口被称为系统调用(system call).公共函数库构建在系统调用接口之上,应用程序既可以使用公共函数库,也可以使用系统调用.shell是一个特殊的应用程序,为运行其他应用程序提供了一个接口.   1.5 输入和输出 1.文件描述符 文件描述符(file descripti…
C#基础 使用C#命名编译器csc.exe,编译C#程序 变量 变量一般初始化后才能使用 类型判断弱类型var,根据初始值判断类型, 变量作用域,可以访问该代码的区域 类中定义的成员变量和属性,作用在类中 局部变量声明在方法内或者括号代码块的作用域中 循环中声明的变量,作用在循环内 局部变量的作用域会发生冲突,同名局部变量在同一作用域内不能声明2次 字段和局部变量的作用域会发生冲突,同一类型级别下,不能声明字段与变量名相同. 常量 使用const修饰,必须初始化时赋值,一旦赋值则不能修改,它是静…
集合 1.集合接口和类型 接口 说明 IEnumerable<T> 如果foreach语句用于集合,就需要IEnumerable接口.这个借口定义了方法GetEnumerator(),他返回一个实现了IEnumerator接口的枚举 ICollection<T> ICollection<T>接口有泛型集合类实现.使用这个借口可以获得集合中的元素个数(Count属性),把集合复制到数组中(CopyTo()方法),还可以从集合中添加和删除元素(Add(),Remove(),…
字符串和正则表达式 String类 String类对象是不可改变的,对于String对象的重新赋值在本质上是重新创建了一个String对象并将新值赋予该对象,其方法ToString对性能的提高并非很显著. 因为一旦创建了该对象,就不能修改该对象的值 在处理字符串时,最好使用StringBuilder类,其.NET 命名空间是System.Text.该类并非创建新的对象,而是通过Append,Remove,Insert等方法直接对字符串进行操作,通过ToString方法返回操作结果,因此,当你需要…
运算符和类型强制转换 1.运算符 运算符的简化操作 条件运算符: if-else的简化操作,也称三元运算符.如果条件为真,返回一个值,为假返回另外一个值. condition?true_value:false_value checked和unchecked运算符: 如果把一个代码块标记为checked,CLR会执行溢出检查,如果溢出,会抛出OverflowException异常,运行以下代码会抛出异常. ; checked { b++; } Console.WriteLine(b.ToStrin…
数组 1.同一类型和不同类型的多个对象 需要使用同一类型的多个对象则使用集合和数组. Array类为数组元素排序和过滤提供了多个方法,使用枚举器,可以迭代数组所有元素. 2.简单数组 数组的声明 因为数组是引用类型,所以只要声明之后就会分配内存,以保存数组所有元素.使用new运算符,指定数组中的元素类型和数量来初始化数组的变量. 数组的声明: int[] myArray; 数组的初始化 1.先定义后声明并指定数量 int[] myArray; myArray =new int[4]; 2.声明并…
泛型 1.泛型概述 泛型是C#的部分与中间语言IL集成.创建的类或方法指定了类型,在实例化和调用时必须指定类型进行操作. 泛型可以用于类.方法.接口和委托以及结构. 泛型也是结构,同时是运行库CLR定义也可以进行互操作. 使用泛型的优化是: 提供性能 类型安全 二进制代码重用 利于扩展 命名约定 性能 装箱是将值类型转换为值类型,拆箱就是将己转换为引用类型的值类型转换回来,装箱和拆箱是非常影响程序性能的,在代码中应避免装箱和拆箱的操作.使用泛型为实例化类型对象和调用时进行类型指定.就避免了这一操…
继承是面向对象的一大特征.要深刻学习继承,需要学会使用调试的技巧来学习它,因为它比较抽象. 继承 继承是指一个具体的类型直接使用另一类型的某些数据成员或函数成员,继承的类是基类(父类),被继承的类是派生类(子类).所有的类继承Object类,并且拥有Object所有公共方法. 继承类型 实现继承和接口继承 实现继承,表示一个类型派生自一个基类,并且拥有基类所有的公共成员.如果派生类需要重写编写基类的公共方法,则需要使用重写基类方法. 实现继承,利于类型的代码重用和扩展. 接口继承,表示一个类型继…
类与结构 类和结构都是对象的模板 类定义了处理和访问数据的方法,通过类的实例化进行逻辑处理 类与结构的区别是类是引用类型,存储在托管堆上:结构是值类型,存储在栈上的: 类使用class进行修饰,结构使用struct修饰,类的实例通过关键字new进行声明 class PhoneCustomer { public const string DayOfSendingBill="Monday"; public int CustomerID; public void Get() { } } st…
(一)System.String类 System.String是一个类,专门用于存储字符串,允许对字符串进行许多操作.C#提供了关键字string和相关的语法,以便使用这个类更轻松. 例子: 使用运算符重载可以连接字符串: string message1 = "hello"; message1 += " world"; Console.WriteLine(message1); 运行以上代码,结果如下: 例子: C#还允许使用类似于索引器的语法来提取字符: strin…
(一)第一个C#程序 创建一个控制台应用程序,然后输入代码,输入完毕后点击F5 Console.WriteLine();这条语句的意思:把括号内的内容输出到界面上: Console.ReadKey();这条语句的意思:一般就是用来在程序运行到此处时等待键盘输入,以此来达到不关闭界面的效果,方便我们观察输出结果 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text;…
(一) C#与.NET的关系 1) C#编写的所有代码都使用.NET Framework运行. 2) C#是一种编程语言,.NET Framework是一个平台(可开发.部署和执行分布式应用程序). 3) C#与.NET之间存在互不支持的特性. (二)公共语言运行库 公共语言运行库(CLR)或.NET运行库,是.NET Framework的核心. 运行在CLR控制下的代码称为托管代码(源代码--编译-->IL(中间语言)--CLR-->平台专用代码). (三)中间语言(IL) 主要特性: 1)…
原文网址:http://blog.csdn.net/hubbybob1/article/details/40859835 大家好,从这周开始学习apue<UNIX环境高级编程第三版>,在此,我要感谢网易的一个工程师朋友和室友,没有他们,我不会开始真正的学习这本书,希望大家以后开始慢慢进步.废话少说,直接上课后习题了. UNIX高级编程第一章习题答案: 1.1在系统上验证,除根目录外,目录l和l l是不同的. 答:这个验证有很多方法可使用命令ls .cd.vim等,目录.指向当前目录,目录..指…
译文,个人原创,转载请注明出处(C# 6 与 .NET Core 1.0 高级编程 - 40 章  ASP.NET Core(下)),不对的地方欢迎指出与交流. 章节出自<Professional C# 6 and .NET Core 1.0>.水平有限,各位阅读时仔细分辨,唯望莫误人子弟. 附英文版原文:Professional C# 6 and .NET Core 1.0 - 40 ASP.NET Core 本章节译文分为上下篇,上篇见:C# 6 与 .NET Core 1.0 高级编程…
译文,个人原创,转载请注明出处(C# 6 与 .NET Core 1.0 高级编程 - 40 章  ASP.NET Core(上)),不对的地方欢迎指出与交流. 章节出自<Professional C# 6 and .NET Core 1.0>.水平有限,各位阅读时仔细分辨,唯望莫误人子弟. 附英文版原文:Professional C# 6 and .NET Core 1.0 - 40 ASP.NET Core --------------------------- 本章内容 了解ASP.NE…
译文,个人原创,转载请注明出处(C# 6 与 .NET Core 1.0 高级编程 - 41 ASP.NET MVC(下)),不对的地方欢迎指出与交流. 章节出自<Professional C# 6 and .NET Core 1.0>.水平有限,各位阅读时仔细分辨,唯望莫误人子弟. 附英文版原文:Professional C# 6 and .NET Core 1.0 - Chapter 41 ASP.NET MVC C# 6 与 .NET Core 1.0 高级编程 - 41 ASP.NET…
参考资料<ASP.NET MVC5 高级编程>第5版 第5章 表单和HTML辅助方法 5.1 表单的使用 5.1.1 action 和 method 特性 默认情况下,表单发送的是 HTTP Post 请求 EF 对于外键关系,数据库名称等也有约定.这些约定取代了以前需要提供给一个关系对象映射框架的所有映射和配置. GET 方法:GET 请求的所有参数都在URL中,因此可以为GET 请求建立书签. POST 方法:浏览器把输入值放入 HTTP 请求的主体中. 5.2 辅助方法 可以通过视图的H…
参考资料<ASP.NET MVC5 高级编程>第5版 第2章 控制器 控制器:响应用户的HTTP 请求,并将处理的信息返回给浏览器. 2.1 ASP.NET MVC 简介 MVC 模式中的控制器(controller)主要负责响应用户的输入,并且在响应时修改(Model).通过这种方式,MVC 中的Controller 主要关注的是应用程序流,输入数据的处理,以及对相关视图(View)数据来源的提供 MVC 模式中 URL 首先告诉路由去实例化哪个控制器,调用哪个方法,并为该方法提供需要的参数…
<ASP.NET MVC 4高级编程(第4版)> 基本信息 作者: (美)Jon Galloway    Phil Haack    Brad Wilson    K. Scott Allen    译者: 孙远帅 邹权 丛书名: .NET开发经典名著 出版社:清华大学出版社 ISBN:9787302330035 上架时间:2013-8-22 出版日期:2013 年9月 开本:16开 页码:211 版次:4-1 所属分类:计算机 > 软件与程序设计 > .NET > ASP.…