myserialize.cs
来自「用于移动梦网网关进行TCP通信,可以收发短信,并实现计费功能.使用SOCKET实」· CS 代码 · 共 99 行
CS
99 行
using System;
using System.IO;
using System.Xml;
namespace GateWayFroCMPP3
{
/// <summary>
/// MySerialize 的摘要说明。
/// </summary>
public class MySerialize
{
public MySerialize()
{
//
// TODO: 在此处添加构造函数逻辑
//
}
public static MtMessageForMISC GetMtMessage(string XMLString)
{
byte[] bsmsg=System.Text.Encoding.UTF8.GetBytes(XMLString);
MemoryStream ms=new MemoryStream(bsmsg,false);
MtMessageForMISC mmfm=new MtMessageForMISC();
System.Xml.Serialization.XmlSerializer xs=new System.Xml.Serialization.XmlSerializer(mmfm.GetType(),"jidegang");
try
{
mmfm=(MtMessageForMISC)xs.Deserialize(ms);
}
catch
{
return null;
}
return mmfm;
}
/// <summary>
/// 格式化后的消息可以发送给SMBPP
/// </summary>
/// <param name="TQI"></param>
/// <returns></returns>
public static string GetQueueItemToSmbppXMLString(MessageToSmbppItem TQI)
{
System.Xml.Serialization.XmlSerializer xs=new System.Xml.Serialization.XmlSerializer(TQI.GetType(),"jidegang");
MemoryStream ms=new MemoryStream();
xs.Serialize(ms,TQI);
byte[] bsmsg=ms.GetBuffer();
string str=System.Text.Encoding.UTF8.GetString(bsmsg).TrimEnd('\0');
//string str=Convert.ToBase64String(bsmsg);
return str;
}
/// <summary>
/// 发送到SMBPP信息中数据的内容(MtMessageResp)
/// </summary>
/// <param name="mmfmr"></param>
/// <returns></returns>
public static string GetQueueItemToSmbpp_MtMessageRespXMLString(MtMessageForMISCResp mmfmr)
{
System.Xml.Serialization.XmlSerializer xs=new System.Xml.Serialization.XmlSerializer(mmfmr.GetType(),"jidegang");
MemoryStream ms=new MemoryStream();
xs.Serialize(ms,mmfmr);
byte[] bsmsg=ms.GetBuffer();
string str=System.Text.Encoding.UTF8.GetString(bsmsg).TrimEnd('\0');
//string str=Convert.ToBase64String(bsmsg);
return str;
}
/// <summary>
/// 发送到SMBPP信息中数据的内容(MOMessage)
/// </summary>
/// <param name="mo"></param>
/// <returns></returns>
public static string GetQueueItemToSmbpp_MOMessageXMLString(MOMessage mo)
{
System.Xml.Serialization.XmlSerializer xs=new System.Xml.Serialization.XmlSerializer(mo.GetType(),"jidegang");
MemoryStream ms=new MemoryStream();
xs.Serialize(ms,mo);
byte[] bsmsg=ms.GetBuffer();
string str=System.Text.Encoding.UTF8.GetString(bsmsg).TrimEnd('\0');
//string str=Convert.ToBase64String(bsmsg);
return str;
}
/// <summary>
/// 发送到SMBPP信息中数据的内容(StatusReport)
/// </summary>
/// <param name="mo"></param>
/// <returns></returns>
public static string GetQueueItemToSmbpp_StatusReportXMLString(StatusReport sr)
{
System.Xml.Serialization.XmlSerializer xs=new System.Xml.Serialization.XmlSerializer(sr.GetType(),"jidegang");
MemoryStream ms=new MemoryStream();
xs.Serialize(ms,sr);
byte[] bsmsg=ms.GetBuffer();
string str=System.Text.Encoding.UTF8.GetString(bsmsg).TrimEnd('\0');
//string str=Convert.ToBase64String(bsmsg);
return str;
}
}
}
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?