如何使用C#从ASP.NET中的现有XML字符串中删除具有xmlns属性的节点? [英] How to remove node with xmlns attribute from an existing XML string in ASP.NET with C#?

查看:91
本文介绍了如何使用C#从ASP.NET中的现有XML字符串中删除具有xmlns属性的节点?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想从c#中的现有xml字符串中删除具有xmlns属性的节点。我想删除请求节点。

我的xml如下:

I want to remove node with xmlns attribute from an existing xml string in c#. I want to remove the Request Node.
My xml is as below:

<?xml version="1.0" encoding="utf-16"?><Request xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema"><webServiceRequest><entityDetails><entityId>038</entityId><userName>P049563445634674574325323674we5476956789057905694565745764256456</userName><password>6919301721649254400252100878956720265267481307739303873300957305</password><serviceId>WS001</serviceId><requesterWsiRef>WSI835180322000000</requesterWsiRef><RSASignature>TJQ4BQi3rWA5Xn77t6kkgQQSYafFK8Oe5CsPJGXoyDgp2n78lQ2yDMPWdT7rr4n3oPGUlJ6LMGX1v8sczXPysu/BVNGpGAs0LjJoAiRt4H0PbJodSLkKZRpoUuVkQG/QhAg3LXgulk3ID78CiO3dshCtfu0razVu+cZp6Tq8R8o=</RSASignature></entityDetails><requestDetails><encrypyedRequestKeyData>EV/VkI8uZMd5e+mOwbwb4Ha55rm9fAn6cT+74ocf2eimhoppLP2ylyDKo8SFOCgmHanV7eBEmFgaESU7s/BzewcRsRmnCtG5m/EC3pFFhNcoDwBIgOlCiQSl8Q+mTbXI1OvomTNIAfK5uyIczjsekUWiP8DHphPvgJTC/0La9Pc=</encrypyedRequestKeyData><encryptedRequestData>QGs0t0m1oEKAAAVOV+y+1cJqFMbRj52QOziDHbBCJjgovbdy8CK2apW0Elokd08+CnEgKrUCGm1ZjXojaq1GSRAr/Gkyp6mq7qbsXnQJmJwpAckCiKcTPKXuB+IGWzrDMT1dllQFnmoi2Q9UOQthTtHWmgm38jlzZfKJVR1GwZapNtxJec8z6Wt1lEdfpnz/MkGjTGyoMX7Ov6RDQJOlkloWqn57QeJW5xKYJiBNt1P5qn7BxPx0UfA3OZ4eHgx131cGmFUpeoiJ6p5qdNMt8CsbL6fRZ4OroKjiVf7huf7Aij+RrpBsEGwePtwKkt2ODZHJZTpt0tB0qHRD4TyK9bW30kSMaO9/SVQ7I1rKwkGWZ2YjANkAwS9fEU82QrOxZ+P5fPyLQiYU0ilXc8amwCUA5sT7q+st3W6FIh7Dy2cSRPi6uB030sQeH3Twg/x3S8NjR7L23DfddfBEUwBmPiI5N4glFSCxyr0UWNrtjyURaNhPn+znuHoyrMe6xMUD0yvTruCpUGOwo0dXRsdQDsomHsq9npwQV3AWfcyOG8UlAObE+6vrLd1uhSIew8tnWMMpYL0pdzhNHZgwK58KhdGeX4mosh+shtZy4N5OwlxQ8qJVum7wD+q3mTl7XKnnMfil0UXkGs3HsSKJuXY97oInn9XkSyFA9bJcIPOJcdVdg6/t5Ovlp4d1AVAOv3E3JQDmxPur6y3dboUiHsPLZ/yPd4MwoWqjwguiWKrFzbYXRt/PCuEKUs2GvKENir4Ai5Ks4UORnZESjxN80jZeiqbx+/6XuKmveblQYd90/kElAObE+6vrLd1uhSIew8tnntxijX5Felk9zjXZIGXMDlIqni7OnrrfmvG6rBFr2XAzMQ3dOs8xc6M6TQQ7PT8y7YpUp5MvawbOr434Yjsd1TppAdI1AE7RMdP2jc/87x/78UANzosw/6ziYyuWl3gkZacbD6QyZYB8EG+erHlwqKRRIOS/Bfsr1tOfj4HoX8ON4CbO4b08YviPtKjZz8oMXDgVgpCfEJ8nGU+CEMXYLc5XYK7dDYRDaiaOYZJcx1Llxj8mN+BPLFyiExtzt17pNcbowObgyWxfCxNi4WsnV9nKZOdCPGtFJqzxhd0juDBsNVw0SeOuWvJYoNQVbyvrxsOF96b8uhLnjhLWVK33o85XYK7dDYRDaiaOYZJcx1KUryu2IaCwpMU9UFER4NfqM6MFB7/Z9rzGT702iVl5piTEwp6LII+43RLM1PcKkP3ZwutxTNNmvf2skDb/2mHzKxsvp9Fng6ugqOJV/uG5/hH/56Sm2oP8NL1tyVoZE18NfvAAo24MxVZpFHpMBnG+Ef/npKbag/w0vW3JWhkTX/Dr/lkvVVpBvct6t7m5lDDOV2Cu3Q2EQ2omjmGSXMdSkdyKqvO7YPpORQM37pjyhRdYS57fidUNQZYx6mYmT/l7UP1PlPEy4nHFW2LwPry2jcQ25/dVK97tHteQYehwKDY9ShtY7P6buthgUDRGOU+1t9JEjGjvf0lUOyNaysJB3moqeYDHHOukuirOSWejnOsZFUH1cutOUqAYTtQDplY6QKkLq5mcsXdKauXOq06jzldgrt0NhENqJo5hklzHUme2o5IGONWFGDTCriJaRrj6nbjcom28it2N+unQtbp1iWHsOWzqqCEZIULNrMg0JyUA5sT7q+st3W6FIh7Dy2c7SpSqwUKnN/0lZ1mO648FxNGClCAQx4iAQ6EPkIUWA6ZAChQdaPytGBTYR/BPb8wCsvQICk3ZXbR3i8d0Qse5sxvOyegiyw7yme5xTu7x7/yrV1rraQRYOVIvbCu6fI/k9bT41GaorLB8sMhnzcBc</encryptedRequestData></requestDetails></webServiceRequest></Request>





输出

我想要上面的xml如下:



Output
I want the above xml as below:

<?xml version="1.0" encoding="utf-16"?>
<webServiceRequest><entityDetails><entityId>038</entityId><userName>P049563445634674574325323674we5476956789057905694565745764256456</userName><password>6919301721649254400252100878956720265267481307739303873300957305</password><serviceId>WS001</serviceId><requesterWsiRef>WSI835180322000000</requesterWsiRef><RSASignature>TJQ4BQi3rWA5Xn77t6kkgQQSYafFK8Oe5CsPJGXoyDgp2n78lQ2yDMPWdT7rr4n3oPGUlJ6LMGX1v8sczXPysu/BVNGpGAs0LjJoAiRt4H0PbJodSLkKZRpoUuVkQG/QhAg3LXgulk3ID78CiO3dshCtfu0razVu+cZp6Tq8R8o=</RSASignature></entityDetails><requestDetails><encrypyedRequestKeyData>EV/VkI8uZMd5e+mOwbwb4Ha55rm9fAn6cT+74ocf2eimhoppLP2ylyDKo8SFOCgmHanV7eBEmFgaESU7s/BzewcRsRmnCtG5m/EC3pFFhNcoDwBIgOlCiQSl8Q+mTbXI1OvomTNIAfK5uyIczjsekUWiP8DHphPvgJTC/0La9Pc=</encrypyedRequestKeyData><encryptedRequestData>QGs0t0m1oEKAAAVOV+y+1cJqFMbRj52QOziDHbBCJjgovbdy8CK2apW0Elokd08+CnEgKrUCGm1ZjXojaq1GSRAr/Gkyp6mq7qbsXnQJmJwpAckCiKcTPKXuB+IGWzrDMT1dllQFnmoi2Q9UOQthTtHWmgm38jlzZfKJVR1GwZapNtxJec8z6Wt1lEdfpnz/MkGjTGyoMX7Ov6RDQJOlkloWqn57QeJW5xKYJiBNt1P5qn7BxPx0UfA3OZ4eHgx131cGmFUpeoiJ6p5qdNMt8CsbL6fRZ4OroKjiVf7huf7Aij+RrpBsEGwePtwKkt2ODZHJZTpt0tB0qHRD4TyK9bW30kSMaO9/SVQ7I1rKwkGWZ2YjANkAwS9fEU82QrOxZ+P5fPyLQiYU0ilXc8amwCUA5sT7q+st3W6FIh7Dy2cSRPi6uB030sQeH3Twg/x3S8NjR7L23DfddfBEUwBmPiI5N4glFSCxyr0UWNrtjyURaNhPn+znuHoyrMe6xMUD0yvTruCpUGOwo0dXRsdQDsomHsq9npwQV3AWfcyOG8UlAObE+6vrLd1uhSIew8tnWMMpYL0pdzhNHZgwK58KhdGeX4mosh+shtZy4N5OwlxQ8qJVum7wD+q3mTl7XKnnMfil0UXkGs3HsSKJuXY97oInn9XkSyFA9bJcIPOJcdVdg6/t5Ovlp4d1AVAOv3E3JQDmxPur6y3dboUiHsPLZ/yPd4MwoWqjwguiWKrFzbYXRt/PCuEKUs2GvKENir4Ai5Ks4UORnZESjxN80jZeiqbx+/6XuKmveblQYd90/kElAObE+6vrLd1uhSIew8tnntxijX5Felk9zjXZIGXMDlIqni7OnrrfmvG6rBFr2XAzMQ3dOs8xc6M6TQQ7PT8y7YpUp5MvawbOr434Yjsd1TppAdI1AE7RMdP2jc/87x/78UANzosw/6ziYyuWl3gkZacbD6QyZYB8EG+erHlwqKRRIOS/Bfsr1tOfj4HoX8ON4CbO4b08YviPtKjZz8oMXDgVgpCfEJ8nGU+CEMXYLc5XYK7dDYRDaiaOYZJcx1Llxj8mN+BPLFyiExtzt17pNcbowObgyWxfCxNi4WsnV9nKZOdCPGtFJqzxhd0juDBsNVw0SeOuWvJYoNQVbyvrxsOF96b8uhLnjhLWVK33o85XYK7dDYRDaiaOYZJcx1KUryu2IaCwpMU9UFER4NfqM6MFB7/Z9rzGT702iVl5piTEwp6LII+43RLM1PcKkP3ZwutxTNNmvf2skDb/2mHzKxsvp9Fng6ugqOJV/uG5/hH/56Sm2oP8NL1tyVoZE18NfvAAo24MxVZpFHpMBnG+Ef/npKbag/w0vW3JWhkTX/Dr/lkvVVpBvct6t7m5lDDOV2Cu3Q2EQ2omjmGSXMdSkdyKqvO7YPpORQM37pjyhRdYS57fidUNQZYx6mYmT/l7UP1PlPEy4nHFW2LwPry2jcQ25/dVK97tHteQYehwKDY9ShtY7P6buthgUDRGOU+1t9JEjGjvf0lUOyNaysJB3moqeYDHHOukuirOSWejnOsZFUH1cutOUqAYTtQDplY6QKkLq5mcsXdKauXOq06jzldgrt0NhENqJo5hklzHUme2o5IGONWFGDTCriJaRrj6nbjcom28it2N+unQtbp1iWHsOWzqqCEZIULNrMg0JyUA5sT7q+st3W6FIh7Dy2c7SpSqwUKnN/0lZ1mO648FxNGClCAQx4iAQ6EPkIUWA6ZAChQdaPytGBTYR/BPb8wCsvQICk3ZXbR3i8d0Qse5sxvOyegiyw7yme5xTu7x7/yrV1rraQRYOVIvbCu6fI/k9bT41GaorLB8sMhnzcBc</encryptedRequestData></requestDetails></webServiceRequest>





我尝试过:



尝试下面的代码如下:



What I have tried:

Tried below code as below:

XDocument doc = XDocument.Parse(objCBAPIDetails.RequestAPI);
XNamespace ns = "x-schema:tsSchema.xml";
doc.Root.Element(ns + "Request")
    .Elements(ns + "expansion").Remove();



但是没有工作。


But not working.

推荐答案

根据你的描述,你是代码寻找的只是:

Based on your description, the code you're looking for is simply:
XDocument doc = XDocument.Parse(objCBAPIDetails.RequestAPI);
doc.ReplaceNodes(doc.Root.Elements().Single());


这篇关于如何使用C#从ASP.NET中的现有XML字符串中删除具有xmlns属性的节点?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆