Blazor MVVM Async Service во время CTOR или Automatic после создания?C#

Место общения программистов C#
Ответить Пред. темаСлед. тема
Anonymous
 Blazor MVVM Async Service во время CTOR или Automatic после создания?

Сообщение Anonymous »

Мне было дано указание поработать над новым проектом, где я буду использовать MVVM в Blazor Wasm. Создайте интерфейс ViewModel и введите его непосредственно в представление, используя @Inject без кода, и по большей части это работает отлично. для автоматического получения данных Во время загрузки страницы. В обычном Blazor вы использовали бы один из методов жизненного цикла для этого (например, OniNitializedAsync), но, поскольку мы не используем какого-либо кода, эти методы недоступны. В Dotnet ваш CTTO также не может быть асинхронным, поэтому я не могу сделать это здесь, и асинхронная шаблон инициализации также не дает мне правильного результата. < /P>
Я немного оглядывался и, кажется, не может найти правильный способ сделать это, у кого -нибудь есть опыт работы с этой проблемой или знает ответ? обычная настройка (которая работала до этого использования case) < /p>
Пример представления: < /p>
@path "/";
@inject IIndexViewModel viewmodel;
  • @foreach (var item in viewmodel.Items)
    {
  • @item.Name
    }
< /code>
Пример iviewmodel < /p>
List Items;
Task FetchItems();
< /code>
Пример ViewModel < /p>
private readonly IItemService _service;

public IndexViewModel(IItemService service)
{
_service = service;
Items = [];
}

public List Items {get; set;}

public async Task FetchItems()
{
Items = await _service.GetItemsAsync();
}
< /code>
Проблема заключается в том, что вызов FetchItems должен происходит автоматически, а не основываться на действии пользователя, и это вызывает проблемы. < /p>
i ' M также не разрешено использовать код-изенность, поэтому исправления, связанные с чем-то, кроме ViewModel, также не поддаются вопросу. работает отлично, когда Прикреплено к кнопке. К сожалению, это не помощь, так как метод следует автоматически называться без пользовательского ввода. Событие Onload не называется Blazor Wasm.
С уважением

Подробнее здесь: https://stackoverflow.com/questions/794 ... r-creation
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Должен быть одним из: service.start_sticky_compatibility, service.start_sticky, service.start_not_sticky, service.start_
    Гость » » в форуме JAVA
    0 Ответы
    24 Просмотры
    Последнее сообщение Гость
  • Должен быть одним из: service.start_sticky_compatibility, service.start_sticky, service.start_not_sticky, service.start_
    Гость » » в форуме Android
    0 Ответы
    29 Просмотры
    Последнее сообщение Гость
  • Java Service Wrapper во время запуска JAR Application FOM Service Service
    Anonymous » » в форуме JAVA
    0 Ответы
    53 Просмотры
    Последнее сообщение Anonymous
  • Можно ли использовать Async Async's Async's 2,0+ от Flask Wih Flask?
    Anonymous » » в форуме Python
    0 Ответы
    38 Просмотры
    Последнее сообщение Anonymous
  • Android Automatic Horizontally Scrolling TextView
    Anonymous » » в форуме Android
    0 Ответы
    12 Просмотры
    Последнее сообщение Anonymous

Вернуться в «C#»