Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/dart/3.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服务在MVC应用程序中工作(没有404)_C#_Asp.net_Asp.net Mvc_Web Services_Wcf - Fatal编程技术网

C# 如何让WCF服务在MVC应用程序中工作(没有404)

C# 如何让WCF服务在MVC应用程序中工作(没有404),c#,asp.net,asp.net-mvc,web-services,wcf,C#,Asp.net,Asp.net Mvc,Web Services,Wcf,我是MVC和WCF的noob。我有一个MVC应用程序(称为RewardsMVC),我想在其中添加一个WCF服务。我在MVC应用程序中创建了一个名为“Services”的文件夹,并添加了一个WCF服务(称为wcfMain) 我在RouteConfig.cs类中添加了一行 routes.Add(new ServiceRoute("RewardsMVC/Services", new WebServiceHostFactory(), typeof(Services.wcfMain))); 我的wcfM

我是MVC和WCF的noob。我有一个MVC应用程序(称为RewardsMVC),我想在其中添加一个WCF服务。我在MVC应用程序中创建了一个名为“Services”的文件夹,并添加了一个WCF服务(称为wcfMain) 我在RouteConfig.cs类中添加了一行

routes.Add(new ServiceRoute("RewardsMVC/Services", new WebServiceHostFactory(), typeof(Services.wcfMain)));
我的wcfMain.svc(和IwcfMain.cs)中有两个简单的函数

当我添加我的WCF服务时,它被添加到我的web.config文件中:

<system.serviceModel>
    <behaviors>
      <serviceBehaviors>
        <behavior name="">
          <serviceMetadata httpGetEnabled="true" httpsGetEnabled="true" />
          <serviceDebug includeExceptionDetailInFaults="false" />
        </behavior>
      </serviceBehaviors>
    </behaviors>
    <serviceHostingEnvironment aspNetCompatibilityEnabled="true" multipleSiteBindingsEnabled="true" />
</system.serviceModel>

下面是一些愚蠢的问题: 当我尝试导航到wcfMain.svc时,IE给出了一个404错误。 我试过“,”和其他一些变体。我总是得到404错误

为了显示/访问此web服务中的两个功能,我需要更改/添加什么


顺便说一句,我已经习惯了“老派”的asp.net和ASMXWeb服务

我相信您会希望将您的路线修改为/Services/path上的“忽略”。这将阻止MVC堆栈尝试绑定上述请求;和路线。忽略(“报酬SMVC/服务”);然而,当我试图到达“”时,仍然会出现404错误。我还在前面添加了“FHS”,但这并没有造成任何区别。该路线将更多地沿着路线。IgnoreRoute(“RewardsMVC/Services/{*pathInfo}”);另外-您可能希望它位于RegisterRoutes()中的任何其他route语句之上;要验证它是否真的被忽略,请尝试一个静态html页面(如static.htm)或图像,并尝试链接到该页面。我添加了您建议的行,但仍然出现404错误,显示未找到“请求的URL:/FHS/RewardsMVC/Services/wcfMain.svc”。显示错误的路径是正确的。能否更具体地说明路径中前导FHS/的来源/原因?