无法用C#步入wcf函数

时间:2017-08-18 15:42:14

标签: asp.net-mvc wcf

我对WCF还有点新意。我遵循了Pluralsight的教程。在我的解决方案中,我有:

WCF项目“MyCodeLibrary” 控制台应用“ConsoleHost”   - 服务的主机, MVC项目。

mvc项目引用了wcf项目。在我的mvc项目中,我有mylibservice.svc,其中包含:

<%@ ServiceHost Service="MyCodeLibrary.MyLIbService"
    Factory="System.ServiceModel.Activation.WebServiceHostFactory" %>

此文件背后没有代码。如果我启动consolehost应用程序,一切正常,但我无法进入wcf代码。我的控制器上有一个断点,它调用了服务函数,但是我得到了

“无法自动调试”MyCodeLibrary“。无法调试远程过程。这通常表示服务器上尚未启用调试。”

我有服务和mvc项目。

我调用该函数的代码是:

WebChannelFactory<IMyLibService> cf =
    new WebChannelFactory<IMyLibService>(
        new Uri("http://localhost:8084/mylib"));
IMyLibService client = null;
client = cf.CreateChannel();    
List<Report> reports = client.GetByDescrip("this report");

如果我没有断点,一切都有效,但我想进入服务功能。我该怎么做呢?

谢谢。

1 个答案:

答案 0 :(得分:0)

要调试服务,您需要附加该过程。要附加,CTRL + ALT + P或“Debug =&gt; Attach to Process ...”。由于您使用的是控制台应用程序,因此您需要同时运行服务和主机。在主机运行时,附加进程,在这种情况下,您的进程是“consoleHost.exe”。