2013-05-31 176 views
0

我有一个WCF Webservice项目,内置在我的本地机器上,当使用测试客户端托管并触发时,将以远程数据库的格式返回值JSON从远程服务器托管WCF Web服务

例如,如果你在URL与本地主机键,那么你得到的结果早在以下格式:

{ “ID”:3, “值1”: “67.5687”, “值2”:” 126.7125“}

我想在远程服务器上使用公共URL来托管此项目,该项目应该从任何网络返回上述结果。我有3个关于此问题的问题:

**我应该对我当前的WCF项目进行哪些修改以在远程服务器上托管它。

**鉴于各种类型托管等:

1) windows process activation services (WAS) 
2) IIS 
3) Self hosting 
4) Hosting in a Windows service, 

其托管的类型是最适合用于托管在远程服务器上。

**我应该在我的App.Config文件中进行哪些更改(包括从本地主机到IP地址的端点地址更改)以使服务正常工作。

谢谢。

回答

1

1)您不应该仅仅因为想要将代码托管在另一台计算机上而需要对项目进行任何更改。我觉得这是一个奇怪的问题。

2)鉴于您选择JSON作为数据格式和浏览器作为测试客户端,我猜你想通过HTTP使用简单的GET请求使其可用。在Microsoft堆栈中,IIS是Web服务器,并且是此场景的自然选择。

3)很难回答。我不知道你今天的app.config里有什么。我不知道你是否要认证,如果是的话,如何。我不想知道!也就是说,在我看来,如果所有事情都应该像你的开发盒一样行事,那么绑定已经可以。我不记得一个WCF服务是否需要了解它本身的端点(很难理解为什么它需要知道这个)。我认为在主机上进行这种配置更自然,例如, IIS。 客户端当然应该使用指向您承载服务的任何位置的不同端点。 (你可以在app.config中放置许多端点,让用户选择一个,顺便说一句)。

我认为我们大多数人不时反对以下建议,但这是我能给出的最好建议:阅读书。尽可能多地了解你正在使用的东西,在这种情况下WCF。你会在稍后回来,并且你的软件不会太坏!