在浏览器上如何调用一个带参的Webservice服务直接返回XML,而不需要手动输入参数调用

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在浏览器上如何调用一个带参的Webservice服务直接返回XML,而不需要手动输入参数调用相关的知识,希望对你有一定的参考价值。

我自己写了一个WebService,可以打开然后手动输入参数调试,但是不能够在接口后面加方法和参数调用让他直接返回XML,我见过有很多接口能这样调用的!求解啊!在线等!!!

参考技术A http和https接口可以直接返回xml文件的

webservice不能通过浏览器调试,下个soapUI工具调试

.Net 7的带参和不带参的Main入口

前言:
来看看不同托管Main情况。

概述
一般的VS生成的默认Main如下:

static void Main(string[] args)

   Console.Write("Tian xia feng yun chu wo bei");
   Console.ReadLine();

可以看到Main函数带了参数string[] args。

其实它这个参数是可以去掉的,写成如下也可以

static void Main()

   Console.Write("Tian xia feng yun chu wo bei");
   Console.ReadLine();

为什么不要参数也是可以的呢?
本质是在CLR为托管入口提供了两套类型

enum CorEntryPointType

    EntryManagedMain // void main(String[])
    EntryCrtMain     // unsigned main(void)
;

EntryManagedMain是默认的,EntryCrtMain则是隐藏的一种托管入口类型。
CLR会判断当前的托管Main是否包含了参数,如果有且参数个数为1,则是默认的那种,如果无,则是第二种。所以导致了Main入口函数的参数可有可无。

代码如下:

if (nParamCount == 0)
    *pType = EntryCrtMain;
else 
        *pType = EntryManagedMain;
        if (nParamCount != 1)
            ThrowMainMethodException(pFD, IDS_EE_TO_MANY_ARGUMENTS_IN_MAIN);

如果参数个数不等于1的话,抛出ThrowMainMethodException异常。可以在VS里面搞两个参数试验下。

结果报错如下

严重性代码说明项目文件行禁止显示状态
错误CS5001程序不包含适合于入口点的静态 "Main" 方法CSC	1活动

结尾:
作者:江湖评谈

以上是关于在浏览器上如何调用一个带参的Webservice服务直接返回XML,而不需要手动输入参数调用的主要内容,如果未能解决你的问题,请参考以下文章

java14带参的方法

Java - 带参的异常处理模块try(xxx){...}

Java - 带参的异常处理模块try(xxx){...}

Java - 带参的异常处理模块try(xxx){...}

.Net 7的带参和不带参的Main入口

S2第四章