도트 넷 코어에서 경로를 지정하는 방법을 알고 싶습니다. 예를 들어, 나는 하나의 인자 (id)를 얻고 사용자를 반환하는 get 메소드를 가지고있다. 이 방법은이 링크 (api/user/1)를 통해 사용할 수 있습니다. 그래서,이 링크에 대한 메소드 ("api/user/1/profile")를 작성하여 ID를 얻고이 ID와 관련된 것을 리턴하는 방법이 있습니다. 2 가지 방법을 만들거나 경로를 구분하고 경로를 지정해야합니까?ASP 닷넷 코어
0
A
답변
2
속성 기반 라우팅을 사용하면 다음과 같이 수행 할 수 있습니다.
[HttpGet("{id:int}")]
public async Task<IActionResult> GetUserById(int id) {}
[HttpGet("{id:int}/profile")]
public async Task<IActionResult> GetUserProfileById(int id) {}
라우팅에 대한 자세한 내용은이 링크에서 찾을 수 있습니다. 당신이에서 기본 경로를 변경하지 않은 경우
0
는 :
app.UseMvc(routes =>
{
routes.MapRoute(
name: "default",
template: "{controller=Home}/{action=Index}/{id?}");
});
당신은 같은과 함께 사용자 컨트롤러를 만들 수 있습니다 다음
public async Task<IActionResult> Profile(int? id)
{
if (id == null)
{
// Get the id
}
var profile = await _context.Profile
.SingleOrDefaultAsync(m => m.Id == id);
if (profile == null)
{
return NotFound();
}
return View(profile);
}
이 될 것이다 "/ User/Profile/{id}"에 매핑 됨
프로필의 데이터를 얻을 수는 있지만 EFCore 예제를 사용했습니다.
제목을 질문에 대한 더 자세한 설명으로 변경하십시오. –