我测试了protobuf序列化,似乎对于一定数量的对象,它比常规的datacontract序列化慢.使用DataContractSerializer传输大小更大但在序列化和反序列化期间使用DataContractSerializer更快
你认为这是正常的还是我犯了错误?
[DataContract]
public partial class Toto
{
[DataMember]
public string NomToto { get; set; }
[DataMember]
public string PrenomToto { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
这是我的datacontract课程,这与protobuf相同
[ProtoContract]
public partial class Titi
{
[ProtoMember(1)]
public string NomTiti { get; set; }
[ProtoMember(2)]
public string PrenomTiti { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
这是我使用protobuf进行WCF服务的方法(对于没有ms的datacontract,相同)
public class TitiService : ITitiService
{
public byte[] GetAllTitis()
{
List<Titi> titiList = new List<Titi>();
for (int i = 0; i < 20000; i++)
{
var titi = new Titi …Run Code Online (Sandbox Code Playgroud)