2012-04-24 3 views
1

내 웹 API를 컨트롤러를 GET 공식화는 경로와 도메인 가용성을 검색 할 수있는 GET 메소드가 그런데이 길로가는 길 (이 경우 POST가 더 좋다고 생각하십니까?)ASP.NET MVC 양식의 올바른 URL이

이것은 쓰레기/잘못되었거나 잘못되었지만 지금까지 내가 어디에 있는지 추측합니다 (PS는 양식에 ID가 있어야 함).). Model.Name은 도메인 이름입니다

@using (Html.BeginForm("query", "api/domain", FormMethod.Get, new { id = "domain-query" })) 
{ 
    @Html.ValidationSummary(true) 
    <div class="editor-field"> 
     @Html.EditorFor(Model => Model.Name) 
     @Html.ValidationMessageFor(Model => Model.Name) 
    </div> 
    <p> 
     <input type="submit" value="Search" /> 
    </p> 
} 

이 발생합니다 : API/도메인/쿼리 이름

당신의 도움을 주셔서 감사합니다 = 시험 대신 API/도메인/쿼리/테스트 나는 그 멍청한 질문을 안다.

답변

1

여기에있는 것의 몇 가지 :

1) 양식에 GET을 사용하지 마십시오. 이 경우 MVC 양식은 특수한 경우를 제외하고 게시되어야합니다.

2) 귀하의 BeginForm이 잘못되었습니다. 이 과부하와 함께 작업 이름과 컨트롤러 이름을 원하지만 대부분의 경우 걱정할 필요가 없습니다. 다시 말하지만 대부분의 경우

@using (Html.BeginForm()) 

이렇게하면됩니다.

컨트롤러에 대한 메시지가 표시되면 컨트롤러에 "경로"를 넣고 싶지 않을 수도 있습니다. 컨트롤러 이름이 AppController 인 경우 controller 문자열은 단순히 App이어야합니다.

이 예를 보면 다른 문제가 발생할 것으로 예상됩니다. 그것이 작동해야하는 방법에 대해 당신의 두뇌를 감쌀 때까지, 당신은 운동하기 위해 꽤 많은 쟁점을 가질 것입니다. MVC 코드를 작성하는 방법을 이해하기 위해 "Nerd Dinner"자습서를 살펴 보는 것이 좋습니다.

관련 문제