簡體   English   中英

Visual Studio將類的所有屬性轉儲到編輯器中

[英]Visual Studio dump all properties of class into editor

好的,這里有一個為視覺工作室提供了許多方便的小插件的人,或者可以幫助按鍵序列。

假設我有一個Person類:

class Person
{
    string Name { get; set; }
    int Age { get; set; }
}

我正忙着快​​樂地編碼。 我經常遇到需要為該類的所有屬性賦值的情況,或者將屬性的所有值分配給其他屬性。

public override void CopyTo(Person myPerson)
{
    myPerson.Name = "XXX";
    myPerson.Age = 11;
}

我想生成這個部分:

myPerson.Name
myPerson.Age

即只需將myPerson的所有屬性轉儲到一個小列表中。 在Visual Studio編輯器中。

我安裝了resharper,我快速瀏覽了一個專門做這個的實用程序,但我找不到一個。 有人可以幫忙嗎?

您可以使用C#Interactive Window ,它是Visual Studio 2015的一部分

> #r "C:/MyApp/bin/Debug/Foo.dll"
> using MyApp;
> var personType = typeof(Person);
> var personProperties = personType.GetProperties();
> foreach(var personProperty in personProperty) { Console.WriteLine($"{nameof(Person)}.{personProperty.Name}"); }

當然這可以縮短,但這會告訴你如何使用它。

另外,要設置類所在的項目,可以右鍵單擊“解決方案資源管理器”,然后選擇“使用項目初始化交互”。

您所要做的就是在Visual Studio的立即窗口中打印出對象,您不需要R#。

例如?myPerson

所有屬性都會按照您的要求打印出來。

類的值列表

Visual Commander有一個示例命令 (3.復制到Visual Studio文本編輯器中所選類的剪貼板屬性),您可以進一步自定義場景。

C#立即窗口很棒! 這是一個單行程序,可以打印出所需格式的屬性。 只需使用它來滿足您的需求:

typeof(MyApp.Person).GetProperties().Select(x => x.Name).Aggregate((x, y)=>x +", " +y)

以下是Visual Studio 2017中適合我的內容:

打開類編輯器

Cntrl + Shift + C.

然后在彈出的“類視圖”窗口中選擇包含所顯示結構中所需屬性的類名。 該類的所有屬性都將在下面的窗口窗格中列出。 按住Shift並單擊第一個屬性,然后按住Shift鍵並單擊列表中的最后一個屬性。 然后右鍵單擊並從彈出菜單中選擇復制選項。 您可以從那里粘貼到Visual Studio中。 第一個粘貼將如下所示:

Person.Name Person.Age

從那里你可以在每個房產后放置一個回車,這樣他們就會分開來。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM