2017-08-14 13 views
0

C#web api Core 1.1に次の基本コントローラがあります。Core Web APIからカスタムオブジェクトを返す

[Produces("application/json")] 
[Route("api/[controller]")] 
public class TestResultsController : Controller 
{ 
    // GET: api/TestResults 
    [HttpGet] 
    public IEnumerable<string> Get() 
    { 
     return new string[] { "test1", "test2" }; 
    } 

    [HttpGet("getresults")] 
    public IActionResult GetResults() 
    { 
     try 
     { 
      var output = new GroupResult 
      { 
       Name = "Test", 
       Number = 1 
      }; 

      // IEnumerable<GroupResult> output = TestQueries.GetTestResults(); 

      return Ok(output); 
     } 
     catch (Exception ex) 
     { 
      return NotFound("Invalid Result: " + ex.Message); 
     } 
    } 

    // GET: api/TestResults/5 
    [HttpGet("{id}", Name = "Get")] 
    public string Get(int id) 
    { 
     return "value"; 
    } 

    // POST: api/TestResults 
    [HttpPost] 
    public void Post([FromBody]string value) 
    { 
    } 

    // PUT: api/TestResults/5 
    [HttpPut("{id}")] 
    public void Put(int id, [FromBody]string value) 
    { 
    } 

    // DELETE: api/ApiWithActions/5 
    [HttpDelete("{id}")] 
    public void Delete(int id) 
    { 
    } 
} 

GetResults方法は、私は、GroupResultは、.NET 4.5.2で作成した基本的なクラスであるとの問題を抱えています一つであり、私は、溶液中でクラスを参照します。私はlocalhostを実行する:xxxx/api/testresults/getresults私は500エラー無効なサーバーエラーを取得、それは私がデバッグセットを持っているので、メソッドをヒットしないように見えます。私はクラスの作成をコメントアウトし、文字列のienumerableに変更すると、うまく動作しますか?このことから私はこの方法が正しく記載されているが、内部サーバーエラー500がIISからの切り替えを示している見ることができ、プロジェクトに追加闊歩 -

は私が...

歓声

+0

は、ルーティングの問題のように聞こえます。 –

+0

は、startup.csに基本ルーティング設定app.UseMvcを設定してから、コントローラクラスに表示されます。 –

答えて

-1

[OK]をしないのです何かありますエクスプレスはIISであるプロジェクトを実行するために私は次にdotnet.exeウィンドウを見ることができます。ここでメソッドを呼び出した後、frameworkmodel.dll(ファイルが無効です)が見つからないというメッセージが表示されました。これはフレームワーク4.6.1をターゲットにした別のソリューションです。これについて読んだら、このソリューションのターゲットフレームワークを.net core 1.1から.net core 1.0に変更して実行しましたが、現在はsystem.runtime.serialization.dllが見つかりませんでしたが、メソッドが起動されています: - )

+0

これは解決策ではありませんが、元の質問に対する編集になるはずです。 –

+0

よく元のdllを書き直してしまったので、基本的なものであり、これを解決しましたが、コア1.0のみで1.1 –

関連する問題