我正在尝试在一组计算机上发布一个计算服务,这些计算机将由应用程序服务器使用。计算服务器是有状态的,需要能够执行异步回调,所以我想通过 TCP 使用每个会话设置。
服务应用程序是使用 VS2008 中的 WCF 服务应用程序项目类型构建的。
碰巧计算服务机器正在运行 Vista,所以根据我读过的文档,我应该能够使用 WAS 托管。我正在尝试遵循 Microsoft 关于该主题的说明:
但是我很早就遇到了麻烦。我应该将 .svc 文件放在我的应用程序的虚拟目录中。但是由于我没有使用 IIS 托管,如何创建虚拟目录?上面的文档对此并不清楚。
此外,当尝试运行允许 net.tcp 访问我的应用程序的命令时:
%windir%\system32\inetsrv\appcmd.exe set app "Default Web Site/<WCF Application>" /enabledProtocols:net.tcp
我不知道用什么来代替<WCF Application>
。同样,似乎缺少一个以“类似 IIS 托管”的方式发布服务的先前步骤。
我创建了一个尝试使用该服务的测试应用程序。当我单击“添加服务引用”时,它会发现我的服务,但无法使用 net.tcp 连接到它。
这里有没有人成功地托管和使用了一项服务?你对我有什么指示吗?
更新:我现在尝试使用 IIS 管理器将 net.tcp 绑定添加到网站(右键单击 -> 编辑绑定...),但“添加...”对话框中唯一可用的协议是 http 和 https。该列表中没有 net.tcp。是的,我已经安装了非 http 激活组件……很奇怪。