AMessage.cs 793 B

123456789101112131415161718192021222324252627282930313233343536373839
  1. using MongoDB.Bson.Serialization.Attributes;
  2. using ProtoBuf;
  3. // 不要在这个文件加[ProtoInclude]跟[BsonKnowType]标签,加到InnerMessage.cs或者OuterMessage.cs里面去
  4. namespace Model
  5. {
  6. [ProtoContract]
  7. public abstract partial class AMessage
  8. {
  9. public override string ToString()
  10. {
  11. return MongoHelper.ToJson(this);
  12. }
  13. }
  14. [ProtoContract]
  15. public abstract partial class ARequest : AMessage
  16. {
  17. [ProtoMember(1000)]
  18. [BsonIgnoreIfDefault]
  19. public uint RpcId;
  20. }
  21. /// <summary>
  22. /// 服务端回的RPC消息需要继承这个抽象类
  23. /// </summary>
  24. [ProtoContract]
  25. public abstract partial class AResponse : AMessage
  26. {
  27. [ProtoMember(1000)]
  28. public uint RpcId;
  29. [ProtoMember(1001)]
  30. public int Error = 0;
  31. [ProtoMember(1002)]
  32. public string Message = "";
  33. }
  34. }