C#怎么将Byte字段存入xml

C#如何将Byte字段存入xml
数据库是 MS sql 2000,有个表ATable里有个字段是image类型,存储的是二进制流数据,不是图片的数据。
现在想通过C#的WebService读出这个字段的值,存入XML或者Json,然后客户端使用IdHttp.post来接收这数据,
请问要如何实现?谢谢!
------解决方案--------------------
Base64格式

Convert.ToBase64String(Byte数组)
------解决方案--------------------
Base64很大
------解决方案--------------------
Convert.ToBase64String(Byte数组)编码后,在客户端进行解码就行。
------解决方案--------------------
很明显,你这是用字符拼接生成XML. 还是用XML类吧.要不你就自己对字符器编码
------解决方案--------------------
引用:
试过用Convert.ToBase64String(Byte数组),但是转换出来的字符串含有很多斜杠,客户端也读取不出来!

无语了,客户端应该进行反向转换。
------解决方案--------------------
byte[] data = (byte[])dr["Img"];

String str  = Convert.ToBase64String(data)

字符串存入xml应该会吧

然后解析后再还原成byte[]
------解决方案--------------------
可以用字符串,最保险:
byte[] bytes = { 0x00, 0x12, 0x33, 0xf1, 0x43 };
string result = string.Join(" ", bytes.Select(x => Convert.ToString(x, 16).PadLeft(2, '0')));
byte[] b1 = result.Split(' ').Select(x => (byte)Convert.ToInt32(x, 16)).ToArray();