网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

(WCF)WCFandServiceDebug-创新互联

需要做一个多程序间的通讯,采用WCF和WCF Service是目前的选择。(WCF)WCFandServi
ceDebug

需求:和产品进行通讯,和用户有交互操作,并将最后结果传送个DB

成都创新互联专注于农安网站建设服务及定制,我们拥有丰富的企业做网站经验。 热诚为您提供农安营销型网站建设,农安网站制作、农安网页设计、农安网站官网定制、微信小程序开发服务,打造农安网络公司原创品牌,更为您提供农安网站排名全网营销落地服务。

基本思路:

1. 用WPF客户端程序和产品进行通讯,获取必要的结果。

2. WPF客户端程序里调用WCF 的Proxy, 将结果传送个WCF Service。

3. 另外一个程序通过另一个WCF Proxy获取结果,并传送到DB

Control System(Service)       <-------------------->  WCF Service (Host in Windows Service) <----------------------->  UI Application

     |                                                                                      | (Comunication)

    WCF Client(Proxy, GetResult) Device.

     |

    Upload to DB

基本实现:

1.  创建WCF Service Library, 实现 WCF Service 的接口。

2.  创建Windows Service, 并将WCF Service Host 到 Windows Service.

3.  创建WPF UI 程序,实现和Device的通讯。

问题和Debug:

1. Service出现问题的时候,可以用EventViewer来协助Debug。

参考:

1. http://blog.csdn.net/hebeijg/article/details/6161228

2. http://www.codeproject.com/Articles/38160/WCF-Service-Library-with-Windows-Service-Hosting

--------------------

Debug WCF 通讯的时候,应该采用 SvcTraceViewer.exe 工具

https://docs.microsoft.com/en-us/dotnet/framework/wcf/service-trace-viewer-tool-svctraceviewer-exe

三步:
1. 在 Host 端的Config文件里面添加 node内容。具体参考上面连接。注意指定 svclog 文件的路径。
2. 运行WCF 程序 (Host, Client)进行通讯。
3. 用SvcTraceViewer工具打开生成的svclog文件。就可以定位到错误发生行。

--------------

另外还可以通过在ServiceHost端增加internalerror 来得到准确的错误。

  // Enable "IncludeExceptionDetailInFaults".                    ServiceDebugBehavior debug = serviceHost.Description.Behaviors.Find();

// if not found - add behavior with setting turned on   if (debug == null)
                    {
                        serviceHost.Description.Behaviors.Add(
new ServiceDebugBehavior() { IncludeExceptionDetailInFaults = true });
                    }
else
                    {
// make sure setting is turned ON if (!debug.IncludeExceptionDetailInFaults)
                        {
                            debug.IncludeExceptionDetailInFaults= true;
                        }
                    }

当前题目:(WCF)WCFandServiceDebug-创新互联
URL标题:http://bjjierui.cn/article/dsdepo.html

其他资讯