2009-03-16 10 views
4

VSがクラスの背後にあるコード(例えばDefault.aspxのDefault.aspx.cs。)でそれをしないように、ソリューションエクスプローラでグループ化されている部分クラスを作成する可能性があります。部分クラス - のVisual Studio 2008の

私はMyClass.csMyClass.partial.csを作成したいと、彼らは、ソリューションエクスプローラで2つの別々のファイルとして表示すべきではありません。

+1

なぜクラスを部分的にするのですか?すべてを1つのファイルにまとめてください。 –

答えて

10

Visual Studio自体でこれを行う方法はありませんでしたが、.csprojファイルを編集することで可能です。他のファイルの下に表示したいファイルがprojファイルにある場所を探し、依存するファイルの名前にコンテンツセットを持つ要素を追加する必要があります。

例:あなたはMyClass.designer.csをファイル名ならば、それがない

<Compile Include="MyFile.g.cs"> 
    <DependentUpon>MyFile.cs</DependentUpon> 
</Compile> 
0

これはわかりません。一般的に、目的は生成されたコードをサポートすることです(つまり、あなたはそれを維持していません)。そのためには、別のフォルダに置くだけです。

5

私の考えでは、いくつかの「魔法の名前」があります(xaml.csはもう1つです)。

私は、生成されたコードを管理する以外に、部分クラスを使用しないでください。 1つのファイルで管理するコードが多すぎるため、そのルートを下っている場合は、なぜコードが大量にあるのかを再考して、それを細かいクラスに分割してください。これはあなたのケースだと言っているわけではありませんが、ただのアドバイスです)。

+1

あなたはポイントをヒットします。私は悪いデザインと大きな "私はすべてをする"クラスへの道がある巨大なプロジェクトに取り組まなければなりません。それはリファクタリングのために叫ぶが、いくつかの(技術的でない)理由では実行されない。だから私は悪夢を少し傷つけようとしました。 – chbu

+0

私はあなたのために感じる... とにかく幸運。 –

関連する問題