Доступ к контроллеру данных;отсутствует информация об URL? - PullRequest
0 голосов
/ 01 апреля 2019

Я работаю над изучением Angular с C # в VS2017.Я создал базовый проект и вносил изменения в код для изучения.

В "fetch-data.component.ts", созданном новым проектом в VS2017, он создал следующий метод / конструктор:

constructor(http: HttpClient, @Inject('BASE_URL') baseUrl: string) {
http.get<WeatherForecast[]>(baseUrl + 'api/SampleData/WeatherForecasts').subscribe(result => {
  this.forecasts = result;
}, error => console.error(error));

}

Поэтому я хотел бы расширить это и вызвать метод, который я создал сам, поэтому я создал следующий класс в том же контроллере:

public class TestData
{
    public int Id { get; set; }
    public string Name { get; set; }
    public string Value { get; set; }
}

Затем я создал следующее действие в контроллере:

[HttpGet("[action]")]
public TestData GetData()
{
    var rng = new Random();
    var testData = new TestData();

    testData.Name = "TestName";
    testData.Id = 1;
    testData.Value = "TestValue";

    return testData;
}

Я добавил это в html-файл fetch-data:

<button type="button" class="btn btn-primary btn-md" (click)="ClickMeButton()">

Показать сообщение

Данные не указаны

Затем в файле fetch-data.ts я добавил в вызов, который вызывает кнопка:

  public ClickMeButton(http: HttpClient, @Inject('BASE_URL') baseUrl: string) {
http.get<TestData>(baseUrl + 'api/SampleData/GetData').subscribe(result => {
  this.oData = result;
}, error => console.error(error));    

}

Параметры метода: "http: HttpClient, @Inject ('BASE_URL') baseUrl: string" я проверял, чтобы убедиться, что это постоянные данные, но это не так.

Я предполагаю, что смогу сохранитьпеременные в объявлениях класса .ts ...?

Как получить доступ к этому удаленному классу или использовать sa?мне информацию, которую использует конструктор?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...