Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/wcf/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 自托管服务的WCF设计方法_C#_Wcf_Wcf Binding_Wcf Hosting_Wcf Http - Fatal编程技术网

C# 自托管服务的WCF设计方法

C# 自托管服务的WCF设计方法,c#,wcf,wcf-binding,wcf-hosting,wcf-http,C#,Wcf,Wcf Binding,Wcf Hosting,Wcf Http,我希望有一个自托管的WCF服务(没有IIS!),因为我希望直接处理项目之间的数据,而不使用DB 基本上,我需要的是一个服务,它可以让我们说: http:/My Public IP/ServiceName/MethodName/ 当用户创建并向该地址发出HTTP请求时,我希望能够在调试模式下捕获,因此假设我有一个名为Ping的操作契约: public string Ping() { return "Ping"; } 当用户创建HTTP请求时,他将访问该方法,依此类推 我的问题是这样做的最佳设计

我希望有一个自托管的WCF服务(没有IIS!),因为我希望直接处理项目之间的数据,而不使用DB

基本上,我需要的是一个服务,它可以让我们说:

http:/My Public IP/ServiceName/MethodName/

当用户创建并向该地址发出HTTP请求时,我希望能够在调试模式下捕获,因此假设我有一个名为Ping的操作契约:

public string Ping()
{
 return "Ping";
}
当用户创建HTTP请求时,他将访问该方法,依此类推

我的问题是这样做的最佳设计是什么,请记住,这项服务应该可以从世界各地访问,并且位于我的桌面上,我知道我需要打开端口和其他东西,但我可以处理

我需要你们就如何设计这样一个项目提出建议,如果你们有关于这个主题的教程、例子、文章或任何数据,我将非常感谢


提前感谢。

您使用的任何进程都需要创建ServiceHost类的实例。这是负责接收、发送消息、实例化服务实例等的核心类。

A提供了许多示例。在野生互联网上为基于HTTP only协议的自托管WCF服务打开一个端口是提交seppuku的可靠方法。我知道该怎么做,我正在寻找更多关于设计的信息,更具体的信息以及如何做的信息,因此IIS的设计没有什么不同,Windows服务或自托管应用程序:定义ABC:地址、绑定和合同。你将如何主持应用程序并不重要。我是否可以通过另一台不在我网络上的计算机访问它?如果你可以配置网络,这是一个完全独立的问题。如果这是一台Windows机器,我将执行以下操作:查找面向公众的IP地址、允许端口和配置本机。如果公共IP为8.8.8.8,公共端口为8888,专用地址为192.168.0.123,专用端口为80,则NAT规则将路由来自8.8.8.8:8888=>192.168.0.123:80的流量。但这只是一个猜测,我不确定你的人际网络是什么样的