ホームページ  >  記事  >  バックエンド開発  >  ASP.NET のパラメータと特殊な種類のインスタンスの詳細な説明

ASP.NET のパラメータと特殊な種類のインスタンスの詳細な説明

零下一度
零下一度オリジナル
2017-07-02 11:58:361634ブラウズ

この記事では、ASP.NET のパラメーターと特殊な型と特性を主に紹介します。非常に優れており、必要な友人は参照できます

1. オプションのパラメーターと名前付きパラメーター

1. オプションのパラメーター

構文:

[修飾子] 戻り値の型メソッド名 (必須パラメーター 1...必須パラメーター n、オプション パラメーター 1...オプション パラメーター n)

1 つの値...パラメータ n 名: パラメータ n の値)

static void BookList(string category,int pageIndex = 1)
        {
          //操作
        }
        //调用
        static void Main(string[] args)
        {
          BookList("C#"); //使用全部默认参数
          BookList("C#",2) //不使用默认参数
        }

2 .NET の特殊な型

1. 暗黙的な型

暗黙的な型には、主に次のようなアプリケーション シナリオがあります: 初期化ステートメントのローカル型変数の宣言、声明の初期化ステートメントを使用して、声明を使用して、匿名クラスタイプ(new
operatorsを介して取得でき、匿名タイプを作成する)注:匿名型での属性の割り当ては1つです。 time、つまり匿名ペアの属性は読み取り専用です。 3. 動的型 (動的型の定義) メソッド

4. Dynamic キーワードと var キーワードの違いは何ですか? VAR はローカル変数にのみ使用でき、フィールドやパラメーターには使用できません。変数の型は、フィールドの型、メソッドのパラメーター、および

のコンパイル時に決定されます。メソッド値のパラメーターなど

                    类型?变量名                    

                    eg:                    


 System.Nullable<int> num = null;
             System.Nullable<DateTime> birthday = null;
            //或
             int? num = null;
            DateTime? birthday = null;

                                                注:当把一个可空类型赋值给一个非空类型时,将引发编译错误            


   eg:int? num = null; int num2 = num;

            2.可以使用可空类型的属性,解决不能把一个可空类型赋值给一个非空类型

                (1) HasValue:属于bool类型,当变量包含非空值时,它被设置为true

                (2) Value:如果HasValue为true 则说明Value包含有意义的值,否则将引发InvalidOperaionException                          


   int? num1 = 5
        int num2 = num1??0;

三、特性

        1.C#的特性主要有以下特点

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

            特性本质上也是一个雷,直接或间接的继承自Acttribute类

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

        2.语法

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

            eg:             


[Obsolete]  //这个方法可用使用 但是编译时会警告
        [Obsolete("不要使用旧的方法,使用新的方法",false)]  //这个方法可用使用 但是编译时会警告
        [Obsolete("不要使用旧的方法,使用新的方法",true)]   //这个方法不可以使用,编译时会报错
        static void Old(){
          Console.WriteLine("这是旧方法!");
        }
        static void New(){
          Console.WriteLine("这是新方法!");
        }
        public static void Main(){
          Old();
        }

       3.自定义特性(继承Attribute)

            eg:         


[AttributeUsage(AttributeUsages.Class|AttributeUsages.Method,AllowMultiple=true)]
      [AttributeUsage(AttributeUsages.Class)]  //只能在类中进行使用
      [AttributeUsage(AttributeUsages.Method)]  //只能在方法中进行使用
      [AttributeUsage(AllowMultiple=true)]    //可以在同一个类上进行多次使用
      
      class DescriptionAttribute:Attribute{
        public string name{get;set;}
        public DescriptionAttribute(){}
        public DescriptionAttribute(string name){
          this.name = name
        }
      }

以上がASP.NET のパラメータと特殊な種類のインスタンスの詳細な説明の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。