0

我的 VS 项目有以下文件夹和文件:

~\Controllers
  \AccountController.cs
  \HomeController.cs
...
~\Data
  \AccountController.cs

...
~\App_Start
  \RouteConfig.cs
  \WebApiConfig.cs

WebApiConfig.cs包含:

public static class WebApiConfig
{
    public static void Register(HttpConfiguration config)
    {
        config.Routes.MapHttpRoute(
            name: "DefaultApi",
            routeTemplate: "api/{controller}/{action}/{id}",
            defaults: new { id = RouteParameter.Optional }
        );
     }
}

~\Data\AcccountController.cs包含:

namespace myApp.Data
{
    public class AccountController : ApiController
    {
        [HttpGet]
        public string GetUser(int id)
        {
            //...
        }
    ...
    }
}

当我对 进行 http 调用时/api/Account/GetUser,该调用被路由到GetUser上面显示的方法。以上所有内容或任何配置文件中的什么告诉服务器从这个特定文件中采取行动?如果~/Controllers/AccountController.cs还包含同名方法怎么办?

4

1 回答 1

0

它被称为约定优于配置。

于 2013-11-05T12:59:11.317 回答