ホームページ  >  記事  >  バックエンド開発  >  C# プログラミングと Visual Studio の使用に関するヒント (パート 1)

C# プログラミングと Visual Studio の使用に関するヒント (パート 1)

高洛峰
高洛峰オリジナル
2017-02-07 10:59:531456ブラウズ

冒頭の挨拶に興味がありませんか?さて、本題に入りましょう。C# プログラミングと Visual Studio IDE の使用に関する 10 のヒントを紹介します。

1.Environment.Newline

このプロパティはプラットフォームに依存しないことをご存知ですか?各プラットフォームに基づいて新しい改行文字を出力できます。

Console.WriteLine("My Tips On ,{0}C#", Environment.NewLine);

2. 名前空間エイリアス

長い名前空間の代わりに短いエイリアスを使用できることをご存知ですか?曖昧さを避けるために完全な名前空間を制限する必要に遭遇したことはありますか?次のコード例を見てください。これは、拡張 .NET Framework コントロールを使用して作成された汎用ライブラリです。

using System.Web.UI.WebControls;
 using MyGenericLibrary.UserControls;
   
  /* Assuming that you had a Text Box control in both the namespace,
   you would have to fully qualify the class object with the
   complete namespace.To avoid that, you can use namespace alias.
   Change as below */
    
 using System.Web.UI.WebControls;
 using mc = MyGenericLibrary.UserControls;
   
 /*and then use, /*
 mc.TextBox textbox = new mc.TextBox();

3. DebuggerBrowsable 属性

この属性は、デバッグ中にオブジェクトの動作を制御するための非常に強力な機能を備えています。たとえば、クラス オブジェクトをデバッグするときに、デバッグ ウィンドウにプライベート変数を表示するには、[DebuggerBrowsable(DebuggerBrowsableState .Never)] を使用します。属性を使用してそれらを非表示にするには、以下に表示されるコードを示します。

public class MyClass
 {
   private string _id;
      
   public string InternalID
   {
      get { return _id; }
      set { _id = value; }
   }
 }

これを非表示にするコードは次のとおりです:

[DebuggerBrowsable(DebuggerBrowsableState.Never)]
 public class MyClass
 {
   private string _id;
      
   public string InternalID
   {
      get { return _id; }
      set { _id = value; }
   }
 }

4. DebuggerDisplay 属性

この属性により、読み取り可能な説明を持つ変数オブジェクトを表示できるようになり、チームの他のメンバーに読み取り方法を提供するのに役立ちます。コードは効率的であり、使用法も非常に簡単です。次のコード例は変数の値を示しています。

public class MyClass
 {
   [DebuggerDisplay("Value = {myVariable}")]
   public string myVariable = "mydisplay";
 }

5. プロジェクトの仮想ディレクトリを作成します

Visual Studio IDE のこのトリックは、各開発者にプロジェクトに対して同じ名前の仮想ディレクトリを作成させることができ、コードを共有するのに役立ちます。複数の C# 開発者によるコンピューター間の同期。プロジェクト名を右クリックし、「プロパティ」を選択し、「Web」タブで「ローカル IIS Web サーバーを使用する」オプションを選択して、その仮想パスを指定します。

これを設定すると、プロジェクト ファイルを使用するすべての開発者は、ローカル マシン上に同じ名前の仮想ディレクトリを作成するリクエストを受け取ります。

6. プロジェクトのプラットフォームを変更する

ここでのプラットフォームとは、プロジェクト名を右クリックし、[プロパティ] をクリックします。 [ビルド] タブで、次の図に示すように、必要なターゲット プラットフォームを選択します。

C#编程和Visual Studio使用技巧(上)

7. コード定義ウィンドウ

このウィンドウでは、F12 キーを押すと、オブジェクトの定義位置にすばやくジャンプできます。コードエディタはきっとがっかりしないと思います。さらに、Ctrl+W、D キーの組み合わせを押すと、コード定義ウィンドウがポップアップ表示されます。

if (e.Item.ItemType == ListItemType.Item )
 {
   //Your code here.
 }

ListItemType にカーソルを置き、キーの組み合わせを押すと、次のようなウィンドウが表示されます。

C#编程和Visual Studio使用技巧(上)

図 2 コード定義ウィンドウ

8. Null 合体演算子

Null 合体演算子を使用すると、2 つの疑問符で表される非常に簡潔な方法で Null 値を比較できます。たとえば、myfunction によって返される値が null 整数値である可能性があります。その場合、マージ演算子を使用して null かどうかをすばやく確認し、置換値を返すことができます。

int myExpectedValueIfNull = 10;
int expectedValue = myfunction() ?? myExpectedValueIfNull

9. using ステートメントのショートカット キー

Ctrl+ を押して、矢印キーを使用して移動し、Enter キーを押して選択を確定します。

10. 恐ろしいデータセット結合エラーの根本原因を見つけよう

データセット結合エラーの原因が見つからない状況に遭遇したことはありますか?コードを try-catch で囲み、できれば例外処理ブロック内の特定のコードの出力を監視する方法ができました。マージが失敗した理由を正確に把握できます。

StringBuilder error Messages = new StringBuilder();
  try
  {
       DataSet dataSet1 = populateDataSet(1);
  DataSet dataSet2 = populateDataSet(2);
    
  dataset1.Merge(dataset2);
            }
            catch (System.Data.DataException de)
            {
   foreach (DataTable myTable in dataSet1.Tables)
   {
     foreach (DataRow myRow in myTable.GetErrors())
     {
      foreach (DataColumn myColumn in myRow.GetColumnsInError())
      {
        //loop through each column in the row that has caused the error
        //during the bind and show it.
         error Messages .Append(string.Format(
         "Merge failed due to : {0}", myColumn.GetColumnError(myColumn)));
      }
     }
   }
           }

まとめ

これらの C# プログラミングと Visual Studio のスキルを柔軟に活用して、コードを書く楽しさを楽しんでください。もっとコミュニケーションをとって、一緒に進歩していきましょう

さらに C# プログラミングと Visual Studio の使い方のスキル (パート) 1) 関連記事については、PHP 中国語 Web サイトに注目してください。


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