thrift/CS

C#用ライブラリ

Thrift.dllの作成

thriftはバイナリディストリビューションが無いため、ソースからライブラリをビルドする必要がある。 以下ではthrift-0.8.0(2012/8最新版)を、Microsoft Visual C# 2010 Express(無料版)でコンパイル・利用する例。

Thrift.dllのテスト

ここでは既にthriftのIDL定義から、C#クライアントコードが生成されているものとする。これをコンソールアプリケーションから呼び出してみる。

プロジェクトのターゲットを「.NET Framework 4 Client Profile」から「.NET Framework 4」に変更する。以下を参考

この状態でビルドするとエラーは消える。

C#クライアントのテスト

この状態で、thrift-IDLから生成されたC#クライアントをソースツリーに追加する。ビルドするとエラー無しで実行可能。

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Thrift;
using Thrift.Transport;
using Thrift.Protocol;
using sample; // サービスのnamespace

namespace ConsoleApplication1
{
    class Program
    {
        static void Main(string[] args)
        {
            TTransport transport = new TSocket("localhost", 9090);
            TProtocol protocol = new TBinaryProtocol(transport);
            Interface.Client client = new Interface.Client(protocol); // サービス
            transport.Open();
            string s = client.getSomething(); // サービスメソッドの呼び出し
            System.Console.WriteLine(s);
            System.Console.ReadLine();
        }
    }
}
last edited 2012-08-15 06:55:29 by ysugimura