簡體   English   中英

如何修復 gRPC 和 C# 的“命名空間名稱“故障”的類型在命名空間中不存在”?

[英]How to fix "The type of namespace name "Fault" does not exist in the namespace" for gRPC and C#?

我已經定義了很多類型和方法(原始語言中的消息和服務)並被困在這個問題上。 有時,當我進行更改時,我會收到這個非常無用的錯誤消息。

The type of namespace name "Fault" does not exist in the namespace 'MyApp.MyDomain' (are you missing an assembly reference?) 

我正在使用 Visual Studio 2017 並編譯為 C#。

我正在回答我自己的問題,因為我覺得這是一個常見問題。 這也很難弄清楚,因為錯誤消息(雖然有幫助)非常普遍。 也就是說,由於各種原因,您始終會收到相同的錯誤消息。

解決方案是為每個 .proto 文件設置“構建操作”屬性,以使用 protobuf 編譯器進行構建。

做這個:

  1. 在 Visual Studio 解決方案資源管理器中右鍵單擊 .proto 文件。
  2. 選擇“屬性”
  3. 將“構建操作”更改為“Protobuf 編譯器”

您的 .cs 文件現在應該在您的文件夾./project/MyProject/obj/Debug/netstandard2.0/文件夾(或類似的目標文件夾)中生成。

我遇到了這個,但在我的情況下,我有一個導入聲明。 導入語句區分大小寫。

"project/myClass/v1/ mytest .proto" => "project/myClass/v1/ myTest .proto"

暫無
暫無

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

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