WebAPI에는 컨트롤러 이름에 대해 "FooController"라는 명명 규칙이 있습니다. 이것은 ASP.NET MVC와 유사합니다. 코드베이스는 밑줄을 사용하여 이름이 지정된 식별자에서 단어를 구분합니다. "Foo_Bar_Object". 컨트롤러 이름이이 규칙을 따르기 위해서는 컨트롤러 이름을 "Foo_Controller"로 지정해야합니다.밑줄이있는 WebAPI 컨트롤러 이름
기본적으로 URL 경로가 "oursite.com/api/foo_/"처럼 보이기를 원하지 않으며 밑줄을 위해 어디에서나 예외를 만들 필요가 없습니다 (예 : 경로 구성,보기 이름 폴더 등). MVC에서이 작업을 수행하려면, 우리가 할 :
Global.asax에
protected void Application_Start() {
...
ControllerBuilder.Current.SetControllerFactory(new Custom_Controller_Factory());
}
Custom_Controller_Factory.cs
public class Custom_Controller_Factory : DefaultControllerFactory
{
protected override Type GetControllerType(RequestContext request_context, string controller_name)
{
return base.GetControllerType(request_context, controller_name + "_");
}
}
이 완전히 자리 일단 모든 문제의 처리에 걸릴 것 같다 MVC에서. WebAPI에 대해 동일한 작업을 수행 할 수있는 방법이 있습니까? DefaultHttpControllerFactory에 대한 소문을 들었지만 어디서나 찾을 수는 없습니다.
어 자신이 추가 작업을 모두 만드는 점은 무엇인가? 'My_Class_Name'은 표준이 아니므로 누구나 당신이'MyClassName'과 함께한다고 제안 할 것입니다. –
그것은 순전히 주관적인 것입니다. 또한, 내 가게에서 사용하는 명명 표준을 결정하지 않습니다. 우리는 수십 년 간의 코드베이스 선례를 따라야합니다. – jtheis