我的解决方案中有三个文件,我认为我引用但是我遇到了这三个错误
Global.asax.cs name' RouteConfig'在当前上下文中不存在
我错过了什么?感谢:)
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Security;
using System.Web.SessionState;
using System.Web.Http;
namespace PingYourPackage.API.WebHost
{
public class Global : System.Web.HttpApplication
{
protected void Application_Start(object sender, EventArgs e)
{
var config = GlobalConfiguration.Configuration;
RouteConfig.RegisterRoutes(config);
WebAPIConfig.Configure(config);
AutofacWebAPI.Initialize(config);
}
***************
这是autofac类
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Web.Http;
using Autofac;
using Autofac.Integration.WebApi;
using System.Reflection;
namespace PingYourPackage.Config
{
public class AutofacWebAPI
{
public static void Initialize(HttpConfiguration config)
{
Initialize(config,
RegisterServices(new ContainerBuilder()));
}
public static void Initialize (
HttpConfiguration config, IContainer container)
{
config.DependencyResolver =
new AutofacWebApiDependencyResolver(container);
}
private static IContainer RegisterServices(ContainerBuilder builder)
{
builder.RegisterApiControllers(Assembly.GetExecutingAssembly());
// registeration goes here
return builder.Build();
}
}
}
答案 0 :(得分:2)
生成新项目时,默认情况下会将这些*Config
类(例如RouteConfig
)放入App_Code
。
看起来您已将*Config
类从App_Code
目录移到Config
目录中。 App_Code
中的所有内容都会被项目中的其他代码自动引用。
https://msdn.microsoft.com/en-us/library/ex526337(v=vs.140).aspx
App_Code
文件夹中的代码会在您的应用程序中自动引用。
你移动它们是可以的,它们可以在任何地方生活。现在,您只需要在Global.asax.cs
文件中手动引用它们。
using PingYourPackage.Config;
(假设PingYourPackage
是项目/根命名空间的名称)
答案 1 :(得分:2)
这也可以通过在App_Start文件夹中添加RouteConfig.cs类来解决 您可能缺少那里的cs文件
答案 2 :(得分:1)
我在代码中添加了using System.Web.Routing;
,并为我工作了!