ASP.NET 코어 에서 어떻게 방향 을 바 꾸 는 지 상세 하 게 설명 합 니 다.
ASP.NET Core 는 크로스 플랫폼 으로 오픈 소스,경량급,모듈 화 되 어 고성능 웹 개발 프레임 워 크 를 구축 하 는 데 사 용 됩 니 다.ASP.NET Core MVC 는 하나의 request 요청 을 지정 한 url 로 옮 기 는 다양한 방식 을 내장 하고 있 습 니 다.이 글 은 어떻게 실현 할 것 인 가 를 토론 합 니 다.
RedirectActionResult 이해
ASP.NET Core MVC 에는 몇 가지 Redirect 가 내장 되 어 있 습 니 다.예 를 들 어 Redirect Result,Redirect ToAction Result,Redirect ToRoute Result 와 Local Redirect Result 등 은 모두 Action Result 에 계승 되 고 전단 에 Http 302,Http 301,Http 307 과 Http 308 등 상태 코드 를 되 돌려 줄 수 있 습 니 다.
다음 글 에서 우 리 는 이런 종 류 를 어떻게 사용 하 는 지 보 자.
RedirectResult 사용
다음 의 어떤 방법 으로 든 Redirect Result 로 돌아 갈 수 있 습 니 다.
Redirect("/Home/Index");
RedirectPermanent("/Home/Index");
RedirectPermanentPreserveMethod("/Home/Index");
RedirectPreserveMethod("/Home/Index");
만약 이러한 방법 에 속 았 다 면 Redirect Result 를 직접 사용 한 다음 에 permanent 와 preserveMethod 두 개의 매개 변 수 를 통 해 어떤 Http 상태 코드 를 되 돌려 주 는 지 조절 하면 됩 니 다.코드 는 다음 과 같 습 니 다.
public RedirectResult Index()
{
return new RedirectResult(url: "/Home/Index", permanent: true, preserveMethod: true);
}
주의해 야 할 것 은 Redirect 방법 도 지정 한 url 주 소 를 안내 할 수 있 습 니 다.예 를 들 어 아래 와 같 습 니 다.
public RedirectResult Index()
{
return Redirect("https://google.com");
}
다음은 상속 관 계 를 간단하게 알 아 보 겠 습 니 다.HomeController 는 Controller 를 계 승 했 고 후 자 는 Controller Base 를 계 승 했 으 며 IAction Filter,IFilterMetadata,IAsyncAction Filter 와 IDisposable 인 터 페 이 스 를 실 현 했 습 니 다.다음 코드 는 다음 과 같 습 니 다.
public class HomeController : Controller
{
}
public abstract class Controller : ControllerBase, IActionFilter, IFilterMetadata, IAsyncActionFilter, IDisposable
{
}
RedirectToActionResult 사용 하기이 Action Result 는 요청 을 지정 한 Controller.Action 으로 전환 하 는 데 사 용 됩 니 다.Controller 가 지정 되 지 않 으 면 현재 Controller 아래 Action 으로 자 연 스 럽 게 이동 합 니 다.아래 에 나열 되 어 있 는 방법 으로 요청 을 지정 한 Action 으로 이동 할 수 있 습 니 다.
public RedirectToActionResult Index()
{
return RedirectToAction(actionName: "Index", controllerName: "Home");
}
현재 Controller 아래 에 있 는 액 션 으로 만 이동 하면 Controller 이름 을 무시 할 수 있 습 니 다.다음 코드 는 다음 과 같 습 니 다.
public RedirectToActionResult Index()
{
return RedirectToAction(actionName: "Privacy");
}
RedirectToRouteResult 사용 하기이것 은 요청 을 지정 한 Action 으로 옮 길 수 있 는 또 다른 방식 입 니 다.아래 에 나열 되 어 있 는 방법 으로 점프 를 할 수 있 습 니 다.
public RedirectToRouteResult Index()
{
return RedirectToRoute("author");
}
또한 RouteValueDictionary 를 통 해 점프 할 Route 값 을 지정 할 수 있 습 니 다.다음 코드 는 다음 과 같 습 니 다.
var routeValue = new RouteValueDictionary(new { action = "View", controller = "Author"});
return RedirectToRoute(routeValue);
LocalRedirectResult 사용 하기이 Action Result 는 로 컬 url 로 이동 하 는 데 만 사 용 됩 니 다.이 는 외부 사이트 의 url 로 이동 하면 이상 을 던 질 것 임 을 의미 합 니 다.아래 에 나열 한 방법 으로 점프 를 실현 할 수 있다.
마지막 으로 알 아야 할 것 은 RedirectToPage 방법 으로 요청 을 지정 한 Razor 페이지 로 옮 기 고 Http 상태 코드 302 로 돌아 갈 수 있다 는 것 입 니 다.예 를 들 어 Author Page 가 있 습 니 다.다음 코드 로 이동 할 수 있 습 니 다.
public IActionResult RedirectToAuthorPage()
{
return RedirectToPage("Author");
}
번역문 링크:https://www.infoworld.com/art...총결산
ASP.NET Core 에서 어떻게 방향 을 바 꿀 수 있 는 지 에 관 한 이 글 은 여기까지 소개 되 었 습 니 다.더 많은 관련 ASP.NET Core 가 방향 을 바 꿀 수 있 는 내용 은 예전 의 글 을 검색 하거나 아래 의 관련 글 을 계속 조회 하 시기 바 랍 니 다.앞으로 많은 응원 부탁드립니다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
작업 중 문제 해결 - (win 2003 asp. net) Session 과 페이지 전송 방법 으로 해결 방안 을 정상적으로 사용 할 수 없습니다.또한 F 는 처음에 우리 의 BP & IT 프로젝트 팀 이 Forms 폼 검증 을 사용 했다 고 판단 할 수 있 습 니 다. 페이지 를 뛰 어 넘 는 것 은http://hr.bingjun.cc/MyTask/MyTas...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.