什么是C#中的二进制序列化和反序列化?如何在C#中实现二进制序列化?