我在 Visual Studio C# 中开发了一个应用程序。该应用程序已完成。现在我想将该应用程序转换为 Web 服务,以便在我们非常大的网络安装中由其他应用程序调用。我正处于学习使用网络服务的阶段。到目前为止,我在 Web 服务解决方案中有一个简单的 HelloWorldToken 类型的 Web 应用程序。
public WebService() { }
[WebMethod]
public string HelloWorld()
{
return "Hello World - invoke me";
}
[WebMethod]
public string webServiceAdd(int a, int b)
{
int c = a + b;
return " " + a + " + " + b + " = " + c;
}
[WebMethod]
public string HelloWorldToken(string Token)
{
return "Hello World authToken = " + Token ;
}
这在我从 Visual Studio 环境调用它时有效,也适用于 HTML 网页。 “action”标签调用网络服务,表单中有隐藏字段,包含要传递的值。
<form target="_blank"
action=http://localhost:51090/WebService.asmx/webServiceAdd
method="POST">
<tr>
<td>
Invoke Web Service <br />(from form)
<input type="hidden" value="5" name="a" />
<input type="hidden" value="4" name="b" />
<input type="hidden" value="myUserName" name="usr" />
<input type="hidden" value="myPassword" name="psw" />
<input type="hidden" value="theToken" name="Token" />
</td>
<td align="left">
<input type="submit" value="Invoke" class="button">
</td>
</tr>
到目前为止,还不错。网页成功调用web服务,web服务返回成功生成的值。
但是,最终我需要从单独的 C# 应用程序调用 Web 服务。但是要加载单独的 C# 调用代码,我必须卸载 Web 服务代码解决方案。当我卸载 Web 服务时,它停止运行。找不到对它的任何调用。
由于安装规则(非常严格),我无法访问计算机上的 IIS。 运行 Visual Studio 2017 Professional。
我的要求是让 Web 服务在 Visual Studio 内部服务器上运行,同时还测试不同的 Visual Studio C# 应用程序(在不同的解决方案中)来调用 Web 服务。这可能吗?
最佳答案
您可以运行 2 个 Visual Studio 实例并同时启动每个应用(Web 和桌面)。
关于c# - 在 Visual Studio C# 中开发 WebService,并从单独的 VS 解决方案中调用它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54694727/