从Asp.net WebApi使用WCF服务

从Asp.net WebApi使用WCF服务,wcf,asp.net-web-api,Wcf,Asp.net Web Api,我正在为我们的服务创建一个Asp.net Webapi。另一方面,我必须从现有的WCF服务中提取一些数据 我正在asp.net webapi项目中创建web引用。但似乎没有生成代理 我试过VS 2012 RC,然后试过VS 2010。我无法在项目中的任何位置从我的模型/控制器引用它。MVC webapi中是否有其他创建代理的方法。我不知道怎么了 它是否与我不能使用rest服务中的wcf服务有关 我在这里错过了什么 谢谢。尝试添加服务引用,而不是用于不推荐的ASP.NET web服务(ASMX)的

我正在为我们的服务创建一个Asp.net Webapi。另一方面,我必须从现有的WCF服务中提取一些数据

我正在asp.net webapi项目中创建web引用。但似乎没有生成代理

我试过VS 2012 RC,然后试过VS 2010。我无法在项目中的任何位置从我的模型/控制器引用它。MVC webapi中是否有其他创建代理的方法。我不知道怎么了

它是否与我不能使用rest服务中的wcf服务有关

我在这里错过了什么


谢谢。

尝试添加服务引用,而不是用于不推荐的ASP.NET web服务(ASMX)的web引用

我刚试过这个,效果和预期的一样。以下是我所做的:

  • 创建了一个新的ASP.NET MVC 4 Web应用程序并选择了Web API项目模板
  • 已将WCF服务应用程序项目添加到解决方案中。请记住,在向其添加服务引用之前,要先构建它
  • 在WebAPI项目中,我向WCF服务添加了一个服务引用
  • 将ValuesController.Get(int id)中的代码替换为

  • 浏览时

    http://localhost:<port>/api/values/2
    
    http://localhost:/api/values/2
    
    我收到

    <?xml version="1.0" encoding="utf-8"?><string>You entered: 2</string>
    
    您输入了:2
    
    如果添加了服务引用,但reference.cs生成为空,则可能是类型冲突的问题。接下来的工作对我很有用

    要更正它,请右键单击服务引用,然后单击配置服务引用。在配置屏幕上,取消选中“在引用的程序集中重用类型”。如果不是强制更新,它应该自动更新服务引用


    这将适当地生成reference.cs文件。

    我正在Asp.net WebApi项目中添加服务引用,但我无法在项目的任何部分引用它。这是非常奇怪的行为。我怀疑是WSDL生成的原因,因为除了这个WebApi项目,我可以在其他项目中引用服务?新创建的服务引用是否出现在解决方案资源管理器的“服务引用”文件夹下?是否出现。甚至我也可以更新服务。我注意到web.config中并没有像以前从客户端消费WCF服务时那样的记录。我无法在模态或控制器中访问它。我尝试在对象浏览器中查看它。。在那里也看不到。在
    服务引用1
    中,您需要使用
    语句获得什么
    ???我找不到它-谢谢你的帮助!我正在尝试从ASP.NET-MVC4 web应用程序获取wcf服务。
    
    <?xml version="1.0" encoding="utf-8"?><string>You entered: 2</string>