Jon Skeet の proto-csharp-port を使用していますが、Visual Studio 2010 で ReSharper と混合するときに問題が発生しています。
次のように接続されたカスタム MSBuild ターゲットを介して .cs ファイルを生成します。
<Target Name="BeforeBuild" DependsOnTargets="CompileProtos" />
CompileProtos
ターゲットが実行され、 .cs ファイルを使用して、生成された .cs ファイルが項目グループにProtoGen
追加されます。これは、定義されたディレクトリを検索し、見つかったすべての .proto ファイルをコンパイルするため、それらはプロジェクトにリストされません。@(Compile)
CreateItem
問題は、ReSharper が .cs ファイルの内容を認識しないことです (プロジェクトに含まれておらず、まだ存在していない可能性があるため)。そのため、ソリューション分析ライトを緑色に点灯させることができません。
.cs ファイルをプロジェクトに追加すると、.cs ファイルがCompile
アイテム グループに 2 回追加されているため、ビルド エラーが発生します。
Marc の protobuf-net には Visual Studio 2008 の優れた機能が含まれていることを知っています。同様のものを探していますが、Jon の protobuf-csharp-port と Visual Studio 2010 が対象です。
理想的には、プロジェクトに .proto ファイルを追加して正しくビルドし、生成された .cs ファイルを Visual Studio と ReSharper に認識させて、IntelliSense とソリューション分析が適切に機能するようにしたいと考えています。
.xsd ファイルが暗黙的に .cs ファイルを生成する方法のようなものがうまくいくと思います。