5

Ctl K + Ctl Xを使用して、実行時に実際にコードを実行するインテリセンスコードスニペットを作成したい...たとえば、次のようにします。

 <![CDATA[string.Format("{MM/dd/yyyy}", System.DateTime.Now);]]>

ただし、その文字列値を指定するのではなく、指定された形式の日付が必要です。

私が望むもう1つの例は、新しいGuidを作成するが、最初のオクテットに切り捨てることです。そのため、System.Guid.NewGuid()を使用して新しいGuidを作成するを使用します。たとえば、{798400D6-7CEC-41f9-B6AA-116B926802FE}を取得しますが、コードスニペットの値798400D6が必要です。

IntellisenseCodeSnippetを使用しないことを受け入れています。それは簡単だと思いました。

4

3 に答える 3

2

これは、VSマクロで代わりに行ったことです

  Public Sub InsertPartialGuid()            
        Dim objSel As TextSelection = DTE.ActiveDocument.Selection        
        Dim NewGUID As String = String.Format("{0}", (System.Guid.NewGuid().ToString().ToUpper().Split("-")(0)))
        objSel.Insert(NewGUID, vsInsertFlags.vsInsertFlagsContainNewText)
        objSel = Nothing
    End Sub
于 2009-07-21T20:50:20.807 に答える
1

GUIDには、次を使用できます。

string firstOctet = System.Guid.NewGuid().ToString().Split('-')[0];
于 2009-07-21T20:22:40.457 に答える
0

XMLブロックでやろうとしていることを実現するには、IronPythonなどのスクリプト言語エンジンを組み込むか、独自の単純なエンジンを作成する必要があります。C#ソースコードは実行時にコンパイルされません。また、ソースコードは実行時に評価されません。ILバイトコードは人間が読める形式のソースコードですが、そうではありません。

于 2009-07-21T20:28:10.540 に答える