自動生成 - visual studio 2017 c# プロパティ




Visual Studioで Getter と Setter を生成するには? (10)

「生成する」とは、特定の選択された(セットの)変数に必要なコードの自動生成を意味します。

しかし、明示的な説明や良い練習へのコメントは大歓迎です。


'prop'スニペットと自動プロパティに加えて、既存のフィールドを選択してプロパティで公開するためのリファクタリングオプションがあります。 また、 'prop'実装が気に入らない場合は、独自のスニペットを作成することもできます。 さらに、resharperのようなサードパーティのリファクタリングツールは、さらに多くの機能を提供し、より高度なスニペットを簡単に作成できるようにします。 あなたがそれを買う余裕があればResharperをお勧めしたいと思います。

http://msdn.microsoft.com/en-us/library/f7d3wz0k(VS.80).aspx http://www.jetbrains.com/


ReSharperを使用している場合は、ReSharperメニュー - >コード - > Generate ...(または、周囲のクラスの中でAlt + Ins キーを押す )に進み、ゲッターやセッターを生成するためのすべてのオプションを取得します次のように考えることができます:-)


Visual Studio Community Edition 2015では、必要なフィールドをすべて選択してctrl + .キーを押すことができますctrl + . プロパティを自動的に生成します。 フィールドの代わりにプロパティを使用するかどうかを選択する必要があります。


Visual Studioには、プライベート変数からPropertyを生成する機能もあります。

変数を右クリックするとコンテキストメニューが現れ、 "Refactor"項目をクリックします。 カプセル化フィールドを選択します。 これは、変数のgetter / setterプロパティを作成します。

私はこのテクニックのファンではありません。ゲッタ/セッタをたくさん作成しなければならない場合は少し使いづらいですし、プライベートフィールドのすぐ下にプロパティを置くと、私は通常バグですすべてのプライベートフィールドがグループ化され、このVisual Studio機能がクラスのフォーマットを解除します。


propfullキーワードを使用します。
プロパティと変数を生成します


ctrl + kxを使うのではなく、「 propと入力してからタブを2回propだけです


変数を宣言した後、単にアンドロイドスタジオでAlt + Insを押すだけで、ゲッターとセッターがコードを生成します。


生成することによって、自動生成を意味しますか? それはあなたが意味するものではない場合:

Visual Studio 2008は、これを実装するのが最も簡単です。

public PropertyType PropertyName { get; set; }

バックグラウンドでは、これは、プロパティが格納され、取得される暗黙のインスタンス変数を作成します。

しかし、あなたのプロパティでより多くのロジックを入れたい場合は、インスタンス変数を持たなければなりません:

private PropertyType _property;

public PropertyType PropertyName
{
    get
    {
        //logic here 
        return _property;
    }
    set
    {
        //logic here
        _property = value;
    }
 }

Visual Studioの以前のバージョンでは、この方法も常に使用されていました。


私はVisual Studioを自分のマシンにインストールしていないので(Linuxを使用しています)、クラスビルダーにアクセスできるメニューのどこかにウィザードが隠されていたことを覚えています。

このウィザードを使用すると、メソッドや属性など、すべてのクラスの詳細を定義できます。 私がうまく覚えていれば、自動的にセッターとゲッターを作成するようVSに頼むことができるオプションがありました。

私はそれが非常に曖昧だが、それをチェックし、あなたがそれを見つけるかもしれないことを知っている。


私はこれが太陽よりも年上であることを知っていますが、私はこれをこのようにするのが好きなので、答えとして投稿します。

私がやったのは、自分だけのスニペットを作成して、 {get; set;} {get; set;} 私はちょうど私がprop > tabがclunkyであると思うのでそれを作った。

<?xml version="1.0" encoding="utf-8"?>
<CodeSnippets
xmlns="http://schemas.microsoft.com/VisualStudio/2005/CodeSnippet">
  <CodeSnippet Format="1.0.0">
    <Header>
        <Title>get set</Title>
         <Shortcut>get</Shortcut>
    </Header>
    <Snippet>
        <Code Language="CSharp">
            <![CDATA[{get; set;}]]>
        </Code>
    </Snippet>
  </CodeSnippet>

これで、PropTypeとPropNameを手動で入力し、 get > tabと入力すると、get setが追加されます。 それは魔法のようなものではありませんが、最初にアクセス修飾子を入力する傾向があるので、名前と型を完成させることもできます。





getter