Rider(Mac)でgRPCのprotoファイルから生成されたC#スクリプトの補完が効かなかったりした件。

Riderのほうにもこんな感じのissueが存在していたで問題は認識されてるっぽい。2019.3になれば普通に解決するのかなぁ。(問題にぶつかったの2019.2です)

C#でgRPCのため、protoファイルからC#のテンプレートを生成して参照するため、
Grpc.Toolsパッケージを参照に追加して、csprojに

とかしていれば、自分でprotocコマンドとか叩かないでcsファイルが生成してくれて便利!あとは適当に継承させてやればさっくりgRPCを使う準備ができます。なるはずなのですが。

Rider(Mac)ではビルドは通っても、生成されたC#のclass達に対する補完が一切聞かなかったりします。intelliSenseがバキバキ効かないC#なんて価値が9割減です。

なのでどうにかintelliSense効くようにしたいわけです。gRPCの方のissueにごちゃごちゃ書いてありましたけど、うーん。

結果として効いたのは参照しているGrpc.Toolsのバージョンを弄ってみる、です。
ASP.NET CoreのgRPCテンプレートで間接参照しているGrpc.Toolsは2.23.0でした。
これを2.24.0を参照するようにしてあげると、あら不思議。ちゃんと補完されるようになります。要するにcsprojにこんなのが含まれていると幸せになったりします。かもしれません。

issueの方でもパッケージのバージョンでどうのこうのと言われていますが、どうもそれは健在なのか…?

まとめ

Grpc.Toolsのバージョンいじると幸せになれるかもしれない。

その他

MacでASP.NET CoreのgRPCとか使うの、kestrelの設定弄ったりしてめんどくさい(2,3行ではあるが)。C#でのクライアント側にもおまじないをしないといけなかったりしてめんどくさい(1行ではあるが)。
C Coreの方はよく知らないけど、ASP.NET CoreのgRPCはWindowsでやったほうが幸せになれる気がする。Visual Studioではこういった問題起きなかったので…()

neno

都内のJK大学生。趣味はドールと一緒にお出かけして撮影すること。C++とC#が好き。C++は主にリアルタイム画像処理, C#はUnity, WPF, UWP, .NET Coreとかいろいろ。ASPとXamarin学習中。 専攻はCV。最近のおもちゃはHoloLens。

あわせて読みたい

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

%d人のブロガーが「いいね」をつけました。