手遊 通訊要達到最大優化 ,在沒有自己寫出的序列化好的結構下就暫時使用谷歌的protobuf-net 來源於社區 ;
protobuf c#版本分成兩個 一個是protobuf-net 另一個是protobuf-csharp-sport一會再補充
,剛纔實現了自己編輯.proto文件,然後通過ProtoGen生成.cs文件
步驟 1.編輯111.proto文件 遵循谷歌的格式 message一個類的名字 required 必須要賦值的字段
message Person{
required string name=1;
required int32 id=2;
optional string email=3;
enum PhoneType{
MONILE=0;
HOME=1;
WORK=2;}
}
步驟 2.編譯protobuf-net 並且在ProtoGen中引用 之後再編譯Protogen.exe
步驟 3.在dos下cd到protogen.exe 然後 -i:111.proto -o:111.cs -ns:MyProto
搞定
下邊的是另一個版本的 一會再補充
具體步驟如下:
1.先從http://code.google.com/p/protobuf-csharp-port/網站下載protobuf-csharp-port包,我下載的版本是:protobuf-csharp-port-2.4.1.473-release-binaries。
2.將上述包解壓縮之後,取出其中的ProtoGen.exe.config,protoc.exe,ProtoGen.exe及Google.ProtocolBuffers.dll文件放到D:\protoc文件夾裏
(D:\protoc文件夾是我自建的)。
3.打開命令提示符(我的是windows7系統),先用doc命令中的cd C:\命令轉到C盤,然後輸入D:回車,轉到D盤,然後cd protoc轉到D:\protoc文件夾下。(非常細緻哈,甚至有點囉嗦哈,不過我每次用都得google一下的呢~)
4.將需要轉成c#的protobuf文件也添加到D:\protoc文件夾裏,比如我們要轉AddressBook.proto文件。
5.在命令提示符內輸入:
protoc --descriptor_set_out=AddressBook.protobin --include_imports AddressBook.proto
(上述命令之後,你會發現D protoc文件夾內多了一個AddressBook.protobin文件)
接下來:
protogen AddressBook.protobin回車
上述命令之後,D盤protoc文件夾裏多了個AddressBook.cs文件,是的,這就是萬衆矚目的終極目標文件。
大功告成,呵呵,很簡單的吧。
6.將cs文件導入項目中就可以使用了~