Я сейчас играю с Блейзором. И я обнаружил странное поведение, и я не совсем уверен, является ли это моей, Azure или Blazor (это все еще экспериментально, так что возможно) ошибкой. Мой проект размещен на ядре ASP.NET (в Azure, но я уже говорил об этом).
У меня есть следующая модель:
namespace MyProject.Shared
{
public class Emoji
{
public List<string> UnicodeCharacters { get; set; }
public string Description { get; set; }
public Emoji()
{
UnicodeCharacters = new List<string>();
}
}
}
Следующий контроллер:
namespace MyProject.Server.Controllers
{
[Route("api/[controller]")]
public class EmojiPickerController : Controller
{
[HttpGet("[action]")]
public IEnumerable<Emoji> GetEmojis()
{
var emojis = new List<Emoji>();
var emoji = new Emoji();
emoji.Description = "Foo";
emoji.UnicodeCharacters.Add("Bar");
return emojis;
}
}
}
И, наконец, мой компонент:
namespace MyProject.Client.Classes
{
public class EmojiPicker : BlazorComponent
{
[Inject]
protected HttpClient Http { get; set; }
public List<Emoji> Emojis = new List<Emoji>();
protected override async Task OnInitAsync()
{
var emojiArray = await Http.GetJsonAsync<Emoji[]>("api/EmojiPicker/GetEmojis");
Emojis = emojiArray.ToList<Emoji>();
}
}
}
Все работает очень хорошо, когда я запускаю его локально. У меня есть объект в поле зрения, и я могу с ним что-то делать (например, печатать «foo» и «bar» на экране;)).
Но это не так в моем Azure WebApp. Это просто не работает:
Пример WeatherCast работает, между прочим, на обеих платформах. Есть идеи?