如何将 Thrift 依赖项添加到 C# 项目?

How to add Thrift dependencies to a C# project?

您好,我正在尝试将 Thrift 用于 Windows 上的一个项目,但是我似乎不明白如何让它工作,而且我也不太理解所提供的文档。到目前为止,我设法创建了 thrift 编译器并使用它来生成 java 和 c# 文件。然而,当谈到在一个简单的项目中使用它们时,我似乎陷入了同一个部分。现在我正在学习本教程:

http://blog.rfaisal.com/2013/10/09/getting-started-with-apache-thrift/

这很有帮助,但是,我仍然不明白如何添加语言库,例如在教程中他说:

"At this point, you need to add the thrift library to your project. Open the Thrift C# library from the tarball (should be under /lib/csharp) and compile it."

后来他对客户说: "Copy the Thrift Java library from the tarball (should be under /lib/java) to this project."

我有两个文件夹,但我不确定我应该做什么。

有人能给我指出正确的方向吗?

Apache Thrift web site 上有一个教程,可以作为一个良好的开端。

编译器是为 Windows 预构建的,因此理论上您不需要自己构建它,但也不难。最后,这是一个细节。

关于 C# 的库,您有两个选择。推荐的是使用/lib/csharp/src下的工程文件编译Assembly。另一种选择是简单地将所有文件包含到项目中。

当然,您只使用您需要的语言。如果您只需要 C#,请忽略 Java。 Thrift 在多个平台上支持大约 20 多种语言,您可以选择您需要的任何语言,而忽略其余部分。

与生成的文件相同:将它们包含到项目中或创建一个程序集,就像在 lib/csharp/test/ThriftTest 下进行的测试一样。

所有语言的基本工作流程都相同:

  • 创建一个 IDL 文件来表示您的 API 合同
  • 调用 Thrift 编译器生成代码
  • 将所需的 protocol/transport 堆栈放在一起
  • 充实客户端 and/or 服务器代码
  • 构建一切
  • 开心就好。

我遇到的问题是将依赖项添加到项目中。

对于 c#,需要打开 thrift 解决方案,然后 select "Release" 在构建配置下并构建它。然后在 bin/Release 下找到您需要在项目中引用的 .dll 文件。

对于 java 你需要将整个 org 文件夹添加到你的项目,然后你需要将 httpclient-version.jar 和 httpcore-version.jar 添加到构建路径