title: NSwag typescript code generator with angular template does not produce correct post response type
body: <p>My .net core app has a post controller that returns json response. I'm using nswag angular template.</p>
  
  <p>Here is how my controller looks like: </p>
  
  <pre class="lang-cs prettyprint-override"><code>[HttpPost]
  public async Task&lt;ActionResult&lt;RoutineResponse&gt;&gt; PostRoutine([FromBody] RoutineRequest routine)
  {
      var res = await _routineService.AddAsync(new Routine
      {
          Title = routine.Title, 
          Description = routine.Description, 
          Steps = routine.Steps.Select(s =&gt; new Step
          {
              Description = s.Description,
              Order = s.Order,
              PartOfDay = s.PartOfDay
          }).ToList(),
      });
  
      var response = _mapper.Map&lt;RoutineResponse&gt;(res);
      response.Href = _linkGenerator.GetPathByPage("/Routines/Details", null, new {res.Identifier});
  
      return CreatedAtAction("GetRoutine", new { id = res.Id }, response);
  }
  </code></pre>
  
  <p>The resulting generated code looks like this: </p>
  
  <pre class="lang-js prettyprint-override"><code>postRoutine(routine: RoutineRequest | null): Observable&lt;RoutineResponse | null&gt; {
      let url_ = this.baseUrl + "/api/Routines";
      url_ = url_.replace(/[?&amp;]$/, "");
  
      const content_ = JSON.stringify(routine);
  
      let options_ : any = {
          body: content_,
          observe: "response",
          responseType: "blob",           
          headers: new HttpHeaders({
              "Content-Type": "application/json", 
              "Accept": "application/json"
          })
      };
  
      return this.http.request("post", url_, options_).pipe(_observableMergeMap((response_ : any) =&gt; {
          return this.processPostRoutine(response_);
      })).pipe(_observableCatch((response_: any) =&gt; {
          if (response_ instanceof HttpResponseBase) {
              try {
                  return this.processPostRoutine(&lt;any&gt;response_);
              } catch (e) {
                  return &lt;Observable&lt;RoutineResponse | null&gt;&gt;&lt;any&gt;_observableThrow(e);
              }
          } else
              return &lt;Observable&lt;RoutineResponse | null&gt;&gt;&lt;any&gt;_observableThrow(response_);
      }));
  }
  
  protected processPostRoutine(response: HttpResponseBase): Observable&lt;RoutineResponse | null&gt; {
      const status = response.status;
      const responseBlob = 
          response instanceof HttpResponse ? response.body : 
          (&lt;any&gt;response).error instanceof Blob ? (&lt;any&gt;response).error : undefined;
  
      let _headers: any = {}; if (response.headers) { for (let key of response.headers.keys()) { _headers[key] = response.headers.get(key); }};
      if (status === 200) {
          return blobToText(responseBlob).pipe(_observableMergeMap(_responseText =&gt; {
          let result200: any = null;
          let resultData200 = _responseText === "" ? null : JSON.parse(_responseText, this.jsonParseReviver);
          result200 = resultData200 ? RoutineResponse.fromJS(resultData200) : &lt;any&gt;null;
          return _observableOf(result200);
          }));
      } else if (status !== 200 &amp;&amp; status !== 204) {
          return blobToText(responseBlob).pipe(_observableMergeMap(_responseText =&gt; {
          return throwException("An unexpected server error occurred.", status, _responseText, _headers);
          }));
      }
      return _observableOf&lt;RoutineResponse | null&gt;(&lt;any&gt;null);
  }
  </code></pre>
  
  <p>Problems: </p>
  
  <ul>
  <li>The generated code does not correspond to correct response type: Expected <code>200</code> rather than <code>201 created</code> </li>
  <li>Does not return json response</li>
  </ul>