c# - 如何在 C# 中使用 VIES SOAP 服务检查欧盟增值税

标签 c# asp.net soap

我有一个 ASP.NET 网站需要检查用户提供的增值税。 VIES Service可用于公开 SOAP API 的内容.

我需要一个关于如何使用此服务验证增值税的极其简单的示例。在 PHP 中,是这 4 行:https://stackoverflow.com/a/14340495 .对于 C#,我发现一些 2010 年的文章不起作用,或者是数十甚至数百行的“包装器”、“帮助程序服务”等。

我不需要这些,有人可以提供类似于 PHP 的四行程序来检查 C# 中的增值税吗?谢谢。

最佳答案

我发现的最简单的方法就是发送一个 XML 并在它返回时解析它:

var wc = new WebClient();
var request = @"<soapenv:Envelope xmlns:soapenv=""http://schemas.xmlsoap.org/soap/envelope/"" xmlns:urn=""urn:ec.europa.eu:taxud:vies:services:checkVat:types"">
    <soapenv:Header/>
    <soapenv:Body>
      <urn:checkVat>
         <urn:countryCode>COUNTRY</urn:countryCode>
         <urn:vatNumber>VATNUMBER</urn:vatNumber>
      </urn:checkVat>
    </soapenv:Body>
    </soapenv:Envelope>";

request = request.Replace("COUNTRY", countryCode);
request = request.Replace("VATNUMBER", theRest);

String response;
try
{
    response = wc.UploadString("http://ec.europa.eu/taxation_customs/vies/services/checkVatService", request);
}
catch
{
    // service throws WebException e.g. when non-EU VAT is supplied
}

var isValid = response.Contains("<valid>true</valid>");

关于c# - 如何在 C# 中使用 VIES SOAP 服务检查欧盟增值税,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33168424/

相关文章:

c# - 将两个 PDF 页面合并在一起

c# - 在 ASP.NET 中运行 shell 命令

asp.net - 通过安全通道传递 session 而不丢失它

java - 不允许混合使用 XOP/MTOM 和附件

c# - 如何与框架page.xaml通信

c# - 如何在返回对象的 ASP.NET Core WebAPI Controller 中抛出异常?

c# - 用 2 位格式化小数。问题

javascript - 使用 getElementById 从外部 JavaScript 到 asp 文字变量

.net - 从多个 XSD 创建 XML/SOAP 客户端?

c# - 带有 SSL 证书的 .Net Core 连接服务