.NET Core 中的 SoapCore 响应中不需要的前缀

Wal*_*alt 2 .net c# xml soap

我正在编写一个SoapCore网络服务,.NET Core 5.0并且我已经成功地能够通过执行请求SOAPUI并获取有效的响应。我唯一不喜欢的是它在休息消息中添加不需要的前缀。例如,在此响应中:

    <s:Envelope xmlns:s="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
      <s:Body>
        <getMeterIntervalDataByTimeSliceResponse xmlns="http://tempuri.org/">
          <getMeterIntervalDataByTimeSliceResult xmlns:d4p1="http://schemas.datacontract.org/2004/07/MeterDataWebService.Models" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
            <d4p1:AccountId>1234567890</d4p1:AccountId>
            <d4p1:ID>0</d4p1:ID>
            <d4p1:IntervalEndTime>2020-12-22T15:30:57.3705724-05:00</d4p1:IntervalEndTime>
            <d4p1:IntervalLengthInSeconds>PT5M</d4p1:IntervalLengthInSeconds>
            <d4p1:Load>2345.8010350836185</d4p1:Load>
            <d4p1:MeterChannel>1</d4p1:MeterChannel>
            <d4p1:TimeZone>UT</d4p1:TimeZone>
            <d4p1:UnitOfMeasure>KM</d4p1:UnitOfMeasure>
            <d4p1:UtcOffset>0</d4p1:UtcOffset>
          </getMeterIntervalDataByTimeSliceResult>
        </getMeterIntervalDataByTimeSliceResponse>
      </s:Body>
    </s:Envelope>
Run Code Online (Sandbox Code Playgroud)

如何去掉“d4p1”前缀?

Wal*_*alt 5

我想到了。那是在我的Startup.cs班级里。

app.UseSoapEndpoint<ISampleService>("/Service.asmx", new BasicHttpBindingg(), SoapSerializer.XmlSerializer);
Run Code Online (Sandbox Code Playgroud)

我忘记添加该SoapSerializer.XmlSerializer部分了。