我正在尝试在azure中部署一个简单的mvc 6 web api项目,但我遇到了麻烦。
我已经创建了基本入门示例api http://docs.asp.net/projects/mvc/en/latest/getting-started/first-web-api.html并将我的azure Web应用程序资源指向我的git存储库。
我看到git push触发了部署,应用正在运行,但是当我发出请求时,我得到了404响应。
事件查看器显示事件Engine state is changed from Available to Stopped.
FREB日志显示
OUTPUT_CACHE_LOOKUP_END Result="NOT_FOUND"
如何诊断以及使用git在azure上部署mvc 6应用程序的正确方法是什么?
答案 0 :(得分:0)
我forked your repo并将其部署到标准网络应用程序(不是免费的,因为RC1存在尺寸问题,无法部署到免费网络应用程序):http://myparkmvc6demost.azurewebsites.net/
由于您的项目是WebApi,因此访问它的正确方法是:http://myparkmvc6demost.azurewebsites.net/api/todo
这是在TodoController:
中定义的namespace ttg_api.Controllers
{
[Route("api/[controller]")]
public class TodoController : Controller
{
[FromServices]
public ITodoRepository TodoItems { get; set; }
// GET: api/todo
[HttpGet]
public IEnumerable<TodoItem> GetAll()
{
return TodoItems.GetAll();
}
//more code....
}
如果您浏览网站的根目录,您将找不到任何内容,这不是正常理解的Mvc“网站”,它使用MVC6创建WebApi,因为这是ASPNET5中的方式。