我在部署我的WCF服务和ASP.NET Web应用程序时遇到了一些困难。我已经在我的本地机器上工作了一切(定义了我的地址,绑定,合同),我可以从我的ASP.NET(MVC)Web应用程序调用该服务。 (现在的基本网址是http://localhost:####/Design_Time_Address/Fully/Qualified/Service/)
不幸的是,一旦我尝试部署,事情往往会爆发。
这是我目前正在做的事情。如果一个或多个步骤不正确,请告诉我。
就像我说的那样,在我不得不部署之前我很好,不幸的是,我找不到任何可以帮助我的教程。
我不明白我需要做些什么设置才能通过主机服务器通过我的MVC应用程序访问我的服务?我是否需要在我的MVC项目中提供服务参考,就像我现在正在做的那样?我是否必须直接在WCF服务中配置某些内容?是否可以只进行Web部署和Stuff Just Works(TM)?
感谢您的帮助。
答案 0 :(得分:1)
你可以走小步。
http://host/myservice/service1.svc
)。<system.serviceModel>
部分,其中包含一个客户端端点,其地址指向您已发布的WCF服务现在您已经准备好了所有准备开始在服务中实现功能的内容。然后,您可以通过更改ASP.NET MVC 3应用程序的web.config文件中的客户端端点或离开它并发布服务来本地测试服务。
我个人不在Visual Studio中使用Add Service Reference
对话框。当它触及我的web.config时我讨厌它。我不喜欢在未经我的许可或验证的情况下触及我的代码。我使用命令行svcutil.exe为我的WCF服务生成强类型客户端。所以我输入生成2个文件的svcutil.exe http://localhost:1234/service1.svc
命令:一个包含客户端代理的.cs文件和一个包含服务端点配置的app.config文件(由于我更喜欢修改web.config,我通常扔掉它。我的手动申请)。然后我将.cs文件复制到我的客户端应用程序。
答案 1 :(得分:0)
所以,事实证明问题很容易解决......不幸的是,在这种情况下,我是一个完整的菜鸟。我创建了一个WCF服务库,而不是创建WCF服务应用程序。切换到WCF服务应用程序,设置我的终点,将DEPLOYED服务添加到我的MVC应用程序,它就像一个魅力。
今天感觉像个新手......