zoukankan      html  css  js  c++  java
  • 第2章 基于三层架构搭建MVC系统

    第2章 基于三层架构搭建MVC系统

    clip_image002[4]

    2.1 可选参数和命名参数

    2.1.1 可选参数

    语法:

    [修饰符] 返回类型 方法名(必选参数1…必选参数n,可选参数1…可选参数n)

    Static void BookList(string category,string order=”BookName”)…

    2.1.2 命名参数

    语法:

    方法名(参数1名:参数1值…参数n名:参数n值)

    2.2 .NET的特殊类型

    2.2.1 隐式类型

    >var I = 0;

    必须在声明变量的同时进行赋值,使用var声明变量,在编译的时候根据所赋值的类型来确定变量类型。

    2.2.2 匿名类型

    语法:

    new{属性1名:属性1值,…属性n名:属性n名}

    可以将一组只读属性封装到单个对象中,而不需要定义一个类型。类型名由编译器产生,该类型不能在源代码级使用。

    示例:

    >var stu = new{Name=”张三”,Age=18,Gender=”男”}

    2.2.3 dynamic类型

    示例:

    >dynamic person1 = new{Name=”张三”,Age=18}

    >person1.Introduce();//不会报错,如果不存在此方法,运行时报错

    在.NET4.0中,引入了新的关键字dynamic,用来定义动态类型。动态类型是相对于静态类型而言的,当调用动态类型的成员时,并不做编译时检查,而是在运行时查找,如果存在正确,否则抛出异常。

    2.2.4 可空类型

    语法:

    >System.Nullable<类型> 变量名

    类型? 变量名

    可空类型属性:

    (1)HasValue:bool,是否是空置

    (2)Value:值,如果HasValue为false调用抛出InvalidOperaionException异常。

    ??运算符:

    >int? num =null;

    >int num2=num??0;

    “??”运算符首先判断左操作数是否为null,如果为null则返回“??”右面的默认值,否则返回左操作数。

    2.3特性

    C#的特性主要有以下特点。

    >为目标元素(可以是程序集、类、属性、方法等)加入附加信息,类似于注释。

    >特性本质上也是一个类,直接或间接的继承自Attribute类。

    >特性命名都以Attribute结尾,但是在使用它时可以省略,.NET会自动找到对应的特性类。

    在.NET框架中,实现了很多默认的特性,可以在程序集、类、方法的头部使用特性,使用语法如下。

    [特性名]或[特性名(参数值)]

    其中,特性名必须放置在[]之间,()之间的参数由特性类的构造函数确定。

    常用特性:[Obsolete],[Serializable]

    2.3 搭建分区项目

    clip_image004[4]

    clip_image006[4]

    clip_image008[4]

    clip_image010[4]

  • 相关阅读:
    Linux-文件编程
    Linux-编程基础
    Linux-系统管理
    Linux-命令
    图解HTTP-笔记
    微信小程序发送红包功能。填坑记录
    PHP中使用raw格式发送POST请求
    论一个PHP项目上线的注意点
    PHP CURL 模拟form表单上传遇到的小坑
    使用php的curl函数post返回值为301永久迁移的问题。(301 Moved Permanently)
  • 原文地址:https://www.cnblogs.com/xuzhen97/p/8866526.html
Copyright © 2011-2022 走看看