2017-11-18 16 views
0

저는 ASP.NET 코어 예제 프로젝트로 작업하고 있습니다. 프로젝트를 만들려면AWS lambda ASP.NET 코어의 추가 MVC 컨트롤러

dotnet new lambda.DynamoDBBlogAPI --profile default --region us-east-1 

이렇게하면 기본적으로 두 개의 컨트롤러가 만들어집니다. S3의

  • 컨트롤러 ValuesController을 \ 버킷 프록시에 대한 웹 API 컨트롤러 - -

    • 컨트롤러 S3ProxyController을 \ 예를 들어 웹 API 컨트롤러 I는 추가 컨트롤러를 추가하기 위해 노력하고있어

    을 ..하지만 난 컨트롤러가 등록하지 않은 것처럼 분명히 누락되었습니다.

    단순히이 클래스를 Controllers 폴더에 추가하면됩니다.

    using System; 
     
    using System.Collections.Generic; 
     
    using System.Text; 
     
    using Microsoft.AspNetCore.Mvc; 
     
    
     
    namespace FriendHelper.Controllers 
     
    { 
     
        [Route("api/animals")] 
     
        class AnimalController : Controller 
     
        { 
     
         [HttpGet] 
     
         public IEnumerable<string> Get() 
     
         { 
     
          return new string[] { "Lion", "Tiger" }; 
     
         } 
     
    
     
        } 
     
    
     
    }

    이것은 단순히 내가 ASP.NET MVC와 많은 경험이없는 404

    A는 내가 확신 반환 그래서 http://localhost:5000/api/animals에 가고, 등록하지 않는 것 어리석은 뭔가가 있습니다.하지만이 다른 컨트롤러가 어디에 등록되어 있는지 알 수 없습니다.

  • +0

    .net 아직 살아 있습니까? –

    +0

    서비스가 중단된다고 묻는다면 아니요, 그냥 404가됩니다. –

    +0

    일반 MVC에서는 컨트롤러가 아니라 ApiController에서 상속해야합니다. (내가 코어 같아요) –

    답변

    1

    당신은 컨트롤러 클래스 당신이 중 공공 키워드를 삭제하면 작동하지 않습니다 public

    public class AnimalController : Controller{ 
    ... 
    } 
    

    값 컨트롤러를해야한다. 적어도 나를 위해 작동하지 않습니다 :)

    +1

    LOL .. 가끔 나는 단지 자신을 때리고 싶다. 나는 그것이 아주 명백한 무엇인가 알고 있었다. 감사! –