在Visual Studio C#中开发Web服务,并从单独的VS解决方案中调用它



我是在Visual Studio C#中开发的应用程序。该应用程序完成了。现在,我想将应用程序转换为我们非常大的网络安装中其他应用程序调用的Web服务。我正在学习使用Web服务的阶段。到目前为止,我在Web服务解决方案中有一个简单的HelloworldToken类型Web应用程序。

公共网络服务() { }

[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网页上使用它。"操作"标签调用Web服务,并且形式中有隐藏的字段,其中包含要传递的值。

     <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。

我的请求是要在Visual Studio Internal Server上运行Web服务,同时还测试了另一个Visual Studio C#应用程序(在其他解决方案中)以调用Web服务。这可能是吗?

您可以运行2个Visual Studio的实例,并同时启动每个应用程序(Web和Desktop)。

如果您没有本地 iis ,那么您的唯一选择是:

1.-将您的Web服务代码安装在新项目中
2.-运行该项目并保持运行
3.-复制URL localhost:端口...在浏览器
中显示4.-转到您的第二个项目并添加新的服务参考并在
之前粘贴URL副本5.-您现在可以使用Web服务

我在这里的商店里有人建议第二个答案。那就是将Web服务项目和调用项目都放在同一解决方案中。在打开解决方案时,有一种设置两个项目要开始的方法。这样,两者都在同一时间运行。
右键单击"解决方案属性","启动项目",您拥有一个用于多个启动项目的广播按钮。您可以按照想要的方式订购它。

相关内容

  • 没有找到相关文章

最新更新