国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > C# > 正文

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

2019-10-29 21:37:06
字體:
來源:轉載
供稿:網友
C#是一門偉大的編程語言,與C++和Java相比,它的語法更簡單,相對來說更好入門。Visual Studio作為.Net平臺上最重量級的IDE,也通過不斷的更新為開發者帶來更出色的開發體驗。本文將介紹10個C#編程和Visual Studio IDE使用技巧。
 

對開場白沒興趣?好吧,我們直接切入正題,下面介紹10個C#編程和Visual Studio IDE使用技巧。

1、Environment.Newline

你是否知道這個屬性是與平臺無關的?允許你根據每個平臺輸出新的換行字符。
 

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

2、命名空間別名

你是否知道可以使用更短的別名代替長的命名空間?你是否遇到過需要限制完整的命名空間以避免產生歧義?看下面的代碼示例,它是使用擴展的.NET Framework控件創建的一個通用庫。
 

  1. using System.Web.UI.WebControls;  
  2.  using MyGenericLibrary.UserControls;  
  3.    
  4.   /* Assuming that you had a Text Box control in both the namespace,  
  5.    you would have to fully qualify the class object with the  
  6.    complete namespace.To avoid that, you can use namespace alias.  
  7.    Change as below */ 
  8.     
  9.  using System.Web.UI.WebControls;  
  10.  using mc = MyGenericLibrary.UserControls;  
  11.    
  12.  /*and then use, /*  
  13.  mc.TextBox textbox = new mc.TextBox();  
?

3、DebuggerBrowsable屬性

每個C#開發人員應該都有過程序調試的經歷,這個屬性在調試期間控制對象行為的能力非常強大,在調試過程中它在一個小提示窗口中顯示對象,它可以用于隱藏私有成員或在調試窗口中顯示也是多余的成員,例如,當你調試類對象時,在調試窗口中你可以看到私有變量,這個時候你就可以使用[DebuggerBrowsable(DebuggerBrowsableState.Never)]屬性來隱藏它們,下面是可見的代碼。
 

  1. public class MyClass  
  2.  {  
  3.    private string _id;  
  4.       
  5.    public string InternalID  
  6.    {  
  7.       get { return _id; }  
  8.       set { _id = value; }  
  9.    }  
  10.  }  
?

下面是使之隱藏的代碼:
 

  1. [DebuggerBrowsable(DebuggerBrowsableState.Never)]  
  2.  public class MyClass  
  3.  {  
  4.    private string _id;  
  5.       
  6.    public string InternalID  
  7.    {  
  8.       get { return _id; }  
  9.       set { _id = value; }  
  10.    }  
  11.  }  
?

4、DebuggerDisplay屬性

這個屬性可讓具有可讀描述的變量對象顯示出來,它有助于提供團隊其它成員未來閱讀代碼的效率,它的用法也是非常簡單的,下面的代碼示例顯示了變量的值。
 

  1. public class MyClass  
  2.  {  
  3.    [DebuggerDisplay("Value = {myVariable}")]  
  4.    public string myVariable = "mydisplay";  
  5.  }  
?

5、為項目創建虛擬目錄

你可以強制每個開發人員在本地為項目創建一個同名的虛擬目錄,這個來自Visual Studio IDE的技巧將有助于代碼在多個C#開發人員的電腦之間同步。在項目名稱上點擊右鍵,選擇“屬性”,在“Web”選項卡中,選中“使用本地IIS Web服務器”選項,然后為其指定一個虛擬路徑。

這樣設置后,所有使用該項目文件的開發人員都會收到一個要求,在本地機器上創建一個同名的虛擬目錄。

6、改變項目平臺

你可以改變應用程序的生成目標平臺,這里的平臺指的是32位和64位環境,在項目名稱上點擊右鍵,選擇“屬性”,在“Build”選項卡中,選擇需要的目標平臺,如下圖所示。

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

圖1 修改項目的目標平臺

7、代碼定義窗口

這個窗口允許你跳轉到對象的定義,你可以按F12鍵快速跳轉到對象的定義位置,在代碼編輯器的任意對象上試試這個功能,相信一定不會讓你失望的。此外,還有一個專門的代碼定義窗口,當你按照Ctrl+W,D組合鍵時就會彈出一個代碼定義窗口。
 

  1. if (e.Item.ItemType == ListItemType.Item )  
  2.  {  
  3.    //Your code here.  
  4.  }  
?

如果你將光標停留在ListItemType上面,然后按下組合鍵,你將會看到如下圖所示的一個窗口。

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

圖2  代碼定義窗口

8、Null合并運算符

Null合并運算符允許你以很簡潔的方式比較空值,它使用兩個問號表示。例如,myfunction返回的值可能是一個空的整數值,在這種情況下,你可以使用合并運算符快速檢查它是否為空,然后返回一個代替值。
 

  1. int myExpectedValueIfNull = 10;  
  2. int expectedValue = myfunction() ?? myExpectedValueIfNull 
?

9、using語句快捷鍵

按下Ctrl+.會彈出一列可用的using語句,使用箭頭鍵進行移動,按下回車鍵確認選擇。

10、尋找恐怖的數據集合并錯誤根本原因

你是否遇到過無法找出數據集合并錯誤的原因?現在有辦法了,使用try-catch將你的代碼包圍起來,最好是在異常處理塊中觀察特定代碼的輸出,可以準確捕捉到合并失敗的原因。
 

  1. StringBuilder error Messages = new StringBuilder();  
  2.   try 
  3.   {  
  4.        DataSet dataSet1 = populateDataSet(1);  
  5.   DataSet dataSet2 = populateDataSet(2);  
  6.     
  7.   dataset1.Merge(dataset2);  
  8.             }  
  9.             catch (System.Data.DataException de)  
  10.             {  
  11.    foreach (DataTable myTable in dataSet1.Tables)  
  12.    {  
  13.      foreach (DataRow myRow in myTable.GetErrors())  
  14.      {  
  15.       foreach (DataColumn myColumn in myRow.GetColumnsInError())  
  16.       {  
  17.         //loop through each column in the row that has caused the error  
  18.         //during the bind and show it.  
  19.          error Messages .Append(string.Format(  
  20.          "Merge failed due to : {0}", myColumn.GetColumnError(myColumn)));  
  21.       }  
  22.      }  
  23.    }  
  24.            }  
?

小結

希望你能靈活運用這些C#編程和Visual Studio技巧,享受寫代碼的樂趣,大家多多交流,一起進步


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 辉县市| 广南县| 靖边县| 苍南县| 文登市| 庆云县| 鸡东县| 澎湖县| 科尔| 高青县| 阜宁县| 营山县| 铜陵市| 利津县| 清水县| 简阳市| 新巴尔虎右旗| 金昌市| 巴楚县| 长治市| 林西县| 泰和县| 邹城市| 天柱县| 清新县| 佛山市| 诸城市| 河北省| 锦州市| 苏尼特左旗| 民勤县| 宁波市| 西宁市| 鄂伦春自治旗| 潞城市| 香港 | 神木县| 中西区| 易门县| 辉南县| 综艺|