我正在尝试调试WCF项目。这不是我在这个世界上想要做的事情的第一选择,但是他们做得很好,做我不知道该怎么做的事情。其他开发者似乎不想帮助我。其中一人说“这只是WCF。”对我而言,WCF并不简单。那么有人能告诉我一个在本地运行这个WCF项目的简单方法吗?我在Visual Studio中加载它,当我告诉它运行它时说“输出类型类库的项目无法启动。”或类似的东西。从那里我来到这里,因为我已经用尽了我对WCF的了解。任何答案都可能需要严重“愚蠢”。我是否提到他们因为不知道如何做这些事而付给我很多钱?
答案 0 :(得分:4)
此错误仅表示您尚未为WCF项目设置任何启动项目。尝试将服务主机项目设置为启动项目(如果有)。如果你没有任何一个尝试在本地制作服务主机项目,并在服务主机项目中添加对该项目的引用。
一个简单的控制台托管项目将如下所示
using System.ServiceModel;
namespace WcfDemoHost
{
class Program
{
static void Main(string[] args)
{
try
{
ServiceHost svchost = new ServiceHost(typeof(yourServiceClassNameHere));
svchost.Open();
Console.WriteLine("Service Started");
Console.ReadLine();
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
}
}
}
还有几种在本地托管WCF服务的方法,如在Windows服务,IIS,控制台,Windows窗体等中托管。您还需要添加App.config文件来配置服务,如服务端点和许多东西。我正在为您提供一些youtube教程链接,它将帮助您了解WCF。我希望本教程能为您提供很多帮助。
https://www.youtube.com/watch?v=QmfPmqMk9Xs&list=PL6n9fhu94yhVxEyaRMaMN_-qnDdNVGsL1
从第3部分开始,主持按照教程24-30。
答案 1 :(得分:0)
拉杰普特的答案可能有效,但是这里的另一位开发人员向我展示了一种更简单的方法(对我而言)。我们的WCF项目已经有一个托管类(我不知道这个)。他告诉我将其设置为启动项目,然后启动项目。然后打开一个浏览器窗口。我复制该浏览器中显示的URL并将该URL粘贴到web.config端点设置中,如下所示:
< endpoint address =" http:// localhost:44798 / ControlService.svc ...
现在我可以进入WCF项目中正在运行的代码。
答案 2 :(得分:0)
将WCF服务设置为“设置为启动项目”和“运行”项目。 对于测试,最好的方法是通过Postman工具而不是为WCF服务创建客户端来检查方法。运行项目并在Postman中使用后,您只需要获取诸如“ http:// localhost:35710 / yourservicename.svc”之类的服务URL。