技术开发 频道

Visual Studio和C#编程10个实用小技巧

  7、代码定义窗口

  这个窗口允许你跳转到对象的定义,你可以按F12键快速跳转到对象的定义位置,在代码编辑器的任意对象上试试这个功能,相信一定不会让你失望的。此外,还有一个专门的代码定义窗口,当你按照Ctrl+W,D组合键时就会弹出一个代码定义窗口。

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

 
  如果你将光标停留在ListItemType上面,然后按下组合键,你将会看到如下图所示的一个窗口。

1

  图 3 代码定义窗口

  8、Null合并运算符

  Null合并运算符允许你以很简洁的方式比较空值,它使用两个问号表示。例如,myfunction返回的值可能是一个空的整数值,在这种情况下,你可以使用合并运算符快速检查它是否为空,然后返回一个代替值。

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

 

  9、using语句快捷键

  按下Ctrl+.会弹出一列可用的using语句,使用箭头键进行移动,按下回车键确认选择,如下图所示

1

  图 4 在代码编辑器中快速调出using语句

  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技巧,享受写代码的乐趣,如果你有其它技巧愿意和大家分享,欢迎在本文后面发表评论。

0
相关文章