@using Shared.DTOs @inject HttpClient _hc @layout EmptyLayout @page "/BlogDetails/{ItemID:int}" @inject NavigationManager Navigation دانشنامه
@((MarkupString)Item?.Text)
@code { //meta tags public string description { get; set; } //--------------------- public string strSearch { get; set; } [Parameter] public int? ItemID { get; set; } public List collectionitem { get; set; } = new List(); public BlogDtoFull? Item { get; set; } protected override async Task OnParametersSetAsync() { if (ItemID != null) { Item = await GetItems(); if (Item == null) Navigation.NavigateTo("/"); else await GenerateTags(); } else Navigation.NavigateTo("/"); await base.OnParametersSetAsync(); } protected override async Task OnInitializedAsync() { var request = await _hc.GetFromJsonAsync>($"Base/LastBlog?PageIndex=1&PageSize=3"); if (request !=null) collectionitem = request.list; await base.OnInitializedAsync(); } } @functions{ public async Task SearchClick() { if (!string.IsNullOrEmpty(strSearch)) Navigation.NavigateTo("/SearchBlog/" + strSearch); } public async Task GetItems() { var response = await _hc.GetAsync($"Base/GetBlogByID/{ItemID}"); if (!response.IsSuccessStatusCode) return null; return await response.Content.ReadFromJsonAsync(); } public async Task GenerateTags() { description = Item.Title; } }