My favorites | Sign in
Project Logo
          
Code license: MIT License
Labels: ProtocolBuffers, .NET
Feeds:
People details
Project owners:
  torbjorn.gyllebring

Proto#

An alternative protocol buffer implementation for .NET. Focus on ease of use and flexibility to integrate into existing solutions.

Currently in alpha. Stay tuned.

A Simple Message

using System;
using System.IO;
using ProtoSharp.Core;

//Based on http://code.google.com/apis/protocolbuffers/docs/encoding.html "A Simple Message"
namespace Test1EncodingSample
{
    class Test1
    {
        [Tag(1)]
        public int A { get; set; }
    }

    class Program
    {
        static void Main(string[] args)
        {
            var encoded = new MemoryStream();
            new MessageWriter(encoded).WriteMessage(new Test1() { A = 150 });
            Console.Write("Encoded = {");//Expected 08 96 01
            var sep = string.Empty;
            Array.ForEach(encoded.ToArray(), b =>
            {
                Console.Write("{0}{1:x}", sep, b);
                sep = ", ";
            });
            Console.WriteLine("}");

            var decoded = MessageReader.Read<Test1>(encoded.ToArray());
            Console.WriteLine("Decoded = {{A: {0}}}", decoded.A);
        }
    }
}








Hosted by Google Code