利用VS.NET 宏生成属性定义以加快开发速度

在编写代码时,往往需要根据定义的私有变量,生成属性定义;这一操作可以利用VS.NET宏实现,代码如下:

 

     Sub TemporaryMacro()
        
Dim TS As TextSelection = DTE.ActiveDocument.Selection
        
Dim Insertion As String, Line As String
        
Dim Lines() As String = TS.Text.Split(vbNewLine)        ' 针对选中部分的每一行,返回相应的属性过程
        Insertion = vbNewLine
        
For Each Line In Lines
            Insertion 
&= GetInsertion(Line)
        
Next
        
If (Insertion.Length > 1Then
            TS.EndOfLine()
            TS.NewLine()
            TS.Insert(Insertion)
        
End If
    
End Sub

    
Private   Function GetInsertion(ByVal text As StringAs String
        
Dim Words() As String = text.Trim.Split()
        
If Words.Length < 3 Then            ' 该行内容不是一个合法的变量声明
            Return ""
        
Else
            
Dim Insertion As String
            Insertion 
&= vbTab & vbTab & "/// <summary>"
            Insertion 
&= vbNewLine
            Insertion 
&= vbTab & vbTab & "///"
            Insertion 
&= vbNewLine
            Insertion 
&= vbTab & vbTab & "/// </summary>"  ' 如果不想要XML注释,那前面这几行可以不要
            Insertion &= vbNewLine
           Insertion 
&= vbTab & vbTab & "public " & Words(1& " " & Words(2).TrimStart("m").TrimStart("_")..TrimEnd(";"'我的私有变量是以“m_”开始的
            Insertion &= vbNewLine
            Insertion 
&= vbTab & vbTab & ""
            Insertion 
&= vbNewLine
            Insertion 
&= vbTab & vbTab & vbTab & "get { return  " & Words(2& " }"
            Insertion 
&= vbNewLine
            Insertion 
&= vbTab & vbTab & vbTab & "set { " & Words(2).TrimEnd(";"& " = value;}"
            Insertion 
&= vbNewLine
            Insertion 
&= vbTab & vbTab & "}"
            Insertion 
&= vbNewLine
            
Return Insertion
        
End If
    
End Function

 

将上面的代码放到VS.NET宏中,然后选中定义的私有变量,再Ctrl+Shift+P即可以根据自定义的私有变量生成属性定义。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值