【发布时间】:2014-03-13 16:33:59
【问题描述】:
我知道还有另一个关于 WebapiConfig.cs 和 RouteConfig.cs 的帖子,但我可以保证这是一个不同的问题。
当我发现我必须创建一个 Web 服务(在同一个域中)时,我的 MVC 项目已经相当成熟,我可以在其中授予对我的一个模型(JSON 和 XML 格式)的访问权限。
为此,我右键单击我的控制器并选择“使用实体框架添加带有操作的 Web API 2 控制器”并还选择了我的模型类和数据库上下文。
模板相当完整,我想我已经准备好进行以下测试了:
namespace MVC4GMAPS.Controllers
{
public class RestController : ApiController
{
private LocationDBContext db = new LocationDBContext();
// GET api/Rest
public IQueryable<Location> GetLocations()
{
return db.Locations;
}
etc...
不幸的是,当我尝试访问 https://localhost:44300/api/Rest 时,我得到了一个 404。但是,localhost:44300/Home/Index 仍然可以正常工作。
我相信问题取决于我的 RouteConfig.cs,因为它需要一个 {action} 而我的 RestController 没有任何操作:
public class RouteConfig
{
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
etc...
我能做什么?我可以同时创建一个 WebapiConfig.cs 文件吗?我相信不会。我希望你能帮助我!
【问题讨论】:
标签: c# asp.net asp.net-mvc web-services asp.net-mvc-4