webservice 序列化 获取类结构XML的问题

danny_2020 2020-07-27 02:11:59
请教下,我定义的了两个实体类,经过序列化 获取xml的格式如下 ,有两个节点地方要去除 。请问在代码中怎么去除
输出
<?xml version="1.0" encoding="UTF-8"?>
<string ---要去除
xmlns="http://tempuri.org/">
<Response>
<ResultCode>0</ResultCode>
<ResultContent>数据获取成功</ResultContent>
<Data>
<EUSERINFO>---要去除
<Name>张医生</Name>
<Dept>门诊部</Dept>
<BM>1001</BM>
</EUSERINFO>
</Data>
</Response>
</string>

结构
public class Response
{

[System.Xml.Serialization.XmlElement(IsNullable = true)]
[DataMember]
public string ResultCode { get; set; }
[DataMember]
public string ResultContent { get; set; }
[DataMember]
public List<EUSERINFO> Data { get; set; }
}
public class EUSERINFO
{

[System.Xml.Serialization.XmlElement(IsNullable = true)]
[DataMember]
public string Name { get; set; }
[System.Xml.Serialization.XmlElement(IsNullable = true)]
[DataMember]
public string Dept { get; set; }
[System.Xml.Serialization.XmlElement(IsNullable = true)]
[DataMember]
public string BM { get; set; }

}

public string XmlSerialize<T>(T obj)
{
XmlSerializer xs = new XmlSerializer(obj.GetType());
MemoryStream ms = new MemoryStream();
//设置序序化XML格式
XmlWriterSettings xws = new XmlWriterSettings();
xws.Indent = true;
xws.OmitXmlDeclaration = true;
xws.Encoding = Encoding.UTF8;

using (XmlWriter xtw = XmlTextWriter.Create(ms, xws))
{

XmlSerializerNamespaces _namespaces = new XmlSerializerNamespaces(
new XmlQualifiedName[] {
new XmlQualifiedName(string.Empty,string.Empty)
});
xs.Serialize(xtw, obj, _namespaces);
ms.Position = 0;
xtw.Close();
}
byte[] b = ms.ToArray();
string s = System.Text.Encoding.UTF8.GetString(b, 0, b.Length);
return s;

}
...全文
319 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
danny_2020 2020-07-27
  • 打赏
  • 举报
回复
显示 <Data> <Name>张医生</Name> <Dept>门诊部</Dept> <BM>1001</BM> </Data> <Data> <Name>李医生</Name> <Dept>住院部</Dept> <BM>1002</BM> </Data>
github_36000833 2020-07-27
  • 打赏
  • 举报
回复
引用 楼主 danny_2020 的回复:
{ ... [DataMember] public List<EUSERINFO> Data { get; set; } } ...
如果List<EUSERINFO> Data下有个EUSERINFO,你怎么办?
danny_2020 2020-07-27
  • 打赏
  • 举报
回复
[WebMethod] public string USER(string Requestparam) { try { EUSER_Request _EUSER = DESerializer<EUSER_Request>(xml1 + Requestparam); Response _EUSER_Response = new Response(); IEnumerable<EUSERINFO> mgetEUSERINFO = _EUSER_Response.getEUSERINFO(_EUSER.UserName.Trim(), _EUSER.Dept.Trim(), _EUSER.UserCode.Trim()); if (mgetEUSERINFO == null) { _EUSER_Response.ResultCode = "1";// = new EUSER_Response() { ResultCode = "1", ResultContent = "数据获取失败", mEUSERINFO= }; _EUSER_Response.ResultContent = "数据获取失败"; } else { _EUSER_Response.ResultCode = "0";// = new EUSER_Response() { ResultCode = "1", ResultContent = "数据获取失败", mEUSERINFO= }; _EUSER_Response.ResultContent = "数据获取成功"; _EUSER_Response.Data = (List<EUSERINFO>)mgetEUSERINFO; } string XML = XmlSerialize(_EUSER_Response); // string filepath = AppDomain.CurrentDomain.BaseDirectory + "User.xml"; return XML; } catch { return string.Empty; } }

62,046

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧