MVC Global.asax --> ServiceRoute / WebServiceHostFactory class 不存在

MVC Global.asax --> ServiceRoute / WebServiceHostFactory class does not exist

在我的 MVC 网站的 global.asax 中,我正在尝试添加 WCF 服务的引用,根据我在网上找到的内容,我应该使用类似于:

 routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

 routes.Add(new ServiceRoute("Person", new WebServiceHostFactory(), typeof(PersonService)));

 routes.MapRoute(
     "Default", // Route name
     "{controller}/{action}/{id}", // URL with parameters
     new { controller = "Home", action = "Index", id = UrlParameter.Optional } // Parameter defaults
 );

但是,即使在说 class ServiceRoute 正在使用命名空间 System.ServiceModel.Activation 之后,编译器仍然说这不是现有的 class... .

同样的情况发生在class“WebServiceHostFactory”...visual studio问我是否要创建这个class......

我在这里错过了什么?

尝试:

 routes.Add(new ServiceRoute("Person", new ServiceHostFactory(), typeof(namespace.PersonService)));

详细原因见Answer

我刚遇到同样的问题,解决方案是将 System.ServiceModel.Activation 命名空间添加到我的项目引用中。