프로그래밍 언어/HTML,CSS,JS

JSON 또는 부분 HTML을 반환하는 ASP.NET MVC 컨트롤러 작업

Rateye 2021. 7. 6. 10:20
728x90
반응형

ㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁㅁ

질문 : JSON 또는 부분 HTML을 반환하는 ASP.NET MVC 컨트롤러 작업

매개 변수에 따라 JSON 또는 부분 html을 반환하는 컨트롤러 작업을 만들려고합니다. 결과를 비동기 적으로 MVC 페이지에 반환하는 가장 좋은 방법은 무엇입니까?

답변

작업 메서드에서 Json (object)를 반환하여 페이지에 JSON을 반환합니다.

public ActionResult SomeActionMethod() {
  return Json(new {foo="bar", baz="Blech"});
  }
  

그런 다음 Ajax를 사용하여 액션 메소드를 호출하십시오. 다음과 같은 ViewPage의 도우미 메서드 중 하나를 사용할 수 있습니다.

<%= Ajax.ActionLink("SomeActionMethod", new AjaxOptions {OnSuccess="somemethod"}) %>
  

SomeMethod는 반환 된 Json 객체를 평가하는 자바 스크립트 메소드입니다.

일반 문자열을 반환하려면 ContentResult를 사용하면됩니다.

public ActionResult SomeActionMethod() {
      return Content("hello world!");
      }
      

ContentResult는 기본적으로 text / plain을 contentType으로 반환합니다.
이것은 오버로드가 가능하므로 다음을 수행 할 수도 있습니다.

return Content("<xml>This is poorly formatted xml.</xml>", "text/xml");
      
출처 : https://stackoverflow.com/questions/227624/asp-net-mvc-controller-actions-that-return-json-or-partial-html
728x90
반응형