我是一個非常高興protobuf網野營。到目前爲止,我一直使用定期protobuf網與[ProtoMember],[ProtoInclude]和朋友標記取得巨大成功。protobuf-net核心文檔/概述
但是現在我意識到我需要遷移到protobuf-net核心,預生成序列化類,特別是能夠在iOS的AOT環境中執行。
這就是所有的常規,我從speficically this blog post發現了一些好的指針,並開始遷移我的protobuf網集成,但有關該主題的信息不完全亂丟interwebs - 至少不是我的谷歌覆蓋的擴展 - 福。
當我遇到另一個障礙時,從源頭挖掘並試圖弄清楚發生了什麼,我變得有點沮喪。我可以真正使用protobuf-net核心與普通品牌的概述/意圖/指導方針。
我最近遇到的是「非公開類型不能用於完整的dll編譯」的限制,目前看起來有點任意,但肯定很煩人,因爲它對我現有的設計有影響(這就是爲什麼我很高興擺脫了常規.net二進制序列化器支持protobuf-net)。
任何經驗分享/ postmortem或類似的有用資源將不勝感激。
編輯:剛剛完成,這裏是到目前爲止我的串行器生成器工具:https://gist.github.com/AngryAnt/a19d8c67155163936aae
嘿馬克。對於遲到的回覆抱歉。我沒有料到你會收到如此迅速的迴應:)關於非公開限制,如果我脫離對抗,我很抱歉。我認爲反思會使需求無效,但我可以明白爲什麼避免依賴這個要求是最有意義的。我已經完全在我的谷歌搜索中錯過了你的博客。這是最新的關於protobuf-net的新聞和文檔的主要去處?預編譯器確實聽起來像我所需要的。你究竟在哪裏建議我們移動談話?再次感謝:) – AngryAnt
@AngryAny通常,在構建時,就在構建DTO之後;例如:'precompile {some path} \ MyDto.dll -o:MySerializer.dll -t:MySerializer' –
我不確定我是否按照你的迴應:) – AngryAnt