【发布时间】:2013-11-19 22:51:00
【问题描述】:
我创建了一个 Asp.Net MVC 5 项目,然后使用 NuGet 添加 hottowl(包括 Breeze)。 我有以下控制器。
[BreezeController]
public class BreezeController : ApiController
{
readonly EFContextProvider<ApplicationDbContext> _contextProvider = new EFContextProvider<ApplicationDbContext>();
[HttpGet]
public string Metadata()
{
return _contextProvider.Metadata();
}
[HttpGet]
public IQueryable<Event> Events()
{
return _contextProvider.Context.Events;
}
}
以下代码存在于文件 BreezeWebApiConfig.cs 中。但是,我在尝试访问http://localhost:49890/Breeze/Events 时总是遇到 404 错误。我错过了什么吗?还是下面的微风路由不起作用?
using System.Web.Http;
[assembly: WebActivator.PreApplicationStartMethod(
typeof(ST13a.App_Start.BreezeWebApiConfig), "RegisterBreezePreStart")]
namespace ST13a.App_Start {
///<summary>
/// Inserts the Breeze Web API controller route at the front of all Web API routes
///</summary>
///<remarks>
/// This class is discovered and run during startup; see
/// http://blogs.msdn.com/b/davidebb/archive/2010/10/11/light-up-your-nupacks-with-startup-code-and-webactivator.aspx
///</remarks>
public static class BreezeWebApiConfig {
public static void RegisterBreezePreStart() {
GlobalConfiguration.Configuration.Routes.MapHttpRoute(
name: "BreezeApi",
routeTemplate: "breeze/{controller}/{action}"
);
}
}
}
【问题讨论】:
标签: asp.net asp.net-mvc breeze asp.net-mvc-5 hottowel