Created
April 9, 2018 18:29
-
-
Save gskachkov/b5314065021bfbae63a90f77e2ae6023 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
[Layout(typeof(MainLayout)), Route("/fetchdata")] | |
public class FetchData : BlazorComponent | |
{ | |
private WeatherForecast[] forecasts; | |
[CompilerGenerated, DebuggerBrowsable(0)] | |
private HttpClient <Http>k__BackingField; | |
protected override void BuildRenderTree(RenderTreeBuilder builder) | |
{ | |
base.BuildRenderTree(builder); | |
builder.AddContent(0, "\n"); | |
builder.OpenElement(1, "h1"); | |
builder.AddContent(2, "Weather forecast"); | |
builder.CloseElement(); | |
builder.AddContent(3, "\n\n"); | |
builder.OpenElement(4, "p"); | |
builder.AddContent(5, "This component demonstrates fetching data from the server."); | |
builder.CloseElement(); | |
builder.AddContent(6, "\n\n"); | |
if (this.forecasts == null) | |
{ | |
builder.AddContent(7, " "); | |
builder.OpenElement(8, "p"); | |
builder.OpenElement(9, "em"); | |
builder.AddContent(10, "Loading..."); | |
builder.CloseElement(); | |
builder.CloseElement(); | |
builder.AddContent(11, "\n"); | |
} | |
else | |
{ | |
builder.AddContent(12, " "); | |
builder.OpenElement(13, "table"); | |
builder.AddAttribute(14, "class", "table"); | |
builder.AddContent(15, "\n "); | |
builder.OpenElement(0x10, "thead"); | |
builder.AddContent(0x11, "\n "); | |
builder.OpenElement(0x12, "tr"); | |
builder.AddContent(0x13, "\n "); | |
builder.OpenElement(20, "th"); | |
builder.AddContent(0x15, "Date"); | |
builder.CloseElement(); | |
builder.AddContent(0x16, "\n "); | |
builder.OpenElement(0x17, "th"); | |
builder.AddContent(0x18, "Temp. (C)"); | |
builder.CloseElement(); | |
builder.AddContent(0x19, "\n "); | |
builder.OpenElement(0x1a, "th"); | |
builder.AddContent(0x1b, "Temp. (F)"); | |
builder.CloseElement(); | |
builder.AddContent(0x1c, "\n "); | |
builder.OpenElement(0x1d, "th"); | |
builder.AddContent(30, "Summary"); | |
builder.CloseElement(); | |
builder.AddContent(0x1f, "\n "); | |
builder.CloseElement(); | |
builder.AddContent(0x20, "\n "); | |
builder.CloseElement(); | |
builder.AddContent(0x21, "\n "); | |
builder.OpenElement(0x22, "tbody"); | |
builder.AddContent(0x23, "\n"); | |
foreach (WeatherForecast forecast in this.forecasts) | |
{ | |
builder.AddContent(0x24, " "); | |
builder.OpenElement(0x25, "tr"); | |
builder.AddContent(0x26, "\n "); | |
builder.OpenElement(0x27, "td"); | |
builder.AddContent(40, forecast.Date.ToShortDateString()); | |
builder.CloseElement(); | |
builder.AddContent(0x29, "\n "); | |
builder.OpenElement(0x2a, "td"); | |
builder.AddContent(0x2b, (int) forecast.TemperatureC); | |
builder.CloseElement(); | |
builder.AddContent(0x2c, "\n "); | |
builder.OpenElement(0x2d, "td"); | |
builder.AddContent(0x2e, (int) forecast.TemperatureF); | |
builder.CloseElement(); | |
builder.AddContent(0x2f, "\n "); | |
builder.OpenElement(0x30, "td"); | |
builder.AddContent(0x31, forecast.Summary); | |
builder.CloseElement(); | |
builder.AddContent(50, "\n "); | |
builder.CloseElement(); | |
builder.AddContent(0x33, "\n"); | |
} | |
builder.AddContent(0x34, " "); | |
builder.CloseElement(); | |
builder.AddContent(0x35, "\n "); | |
builder.CloseElement(); | |
builder.AddContent(0x36, "\n"); | |
} | |
builder.AddContent(0x37, "\n"); | |
} | |
[AsyncStateMachine(typeof(<OnInitAsync>d__2)), DebuggerStepThrough] | |
protected override Task OnInitAsync() | |
{ | |
<OnInitAsync>d__2 d__ = new <OnInitAsync>d__2 { | |
<>4__this = this, | |
<>t__builder = AsyncTaskMethodBuilder.Create(), | |
<>1__state = -1 | |
}; | |
d__.<>t__builder.Start<<OnInitAsync>d__2>(ref d__); | |
return d__.<>t__builder.get_Task(); | |
} | |
[Inject] | |
private HttpClient Http { get; set; } | |
[CompilerGenerated] | |
private sealed class <OnInitAsync>d__2 : IAsyncStateMachine | |
{ | |
public int <>1__state; | |
public AsyncTaskMethodBuilder <>t__builder; | |
public FetchData <>4__this; | |
private FetchData.WeatherForecast[] <>s__1; | |
private TaskAwaiter<FetchData.WeatherForecast[]> <>u__1; | |
// Methods | |
private void MoveNext() | |
{ | |
int num = this.<>1__state; | |
try | |
{ | |
TaskAwaiter<FetchData.WeatherForecast[]> awaiter; | |
if (num != 0) | |
{ | |
awaiter = this.<>4__this.Http.GetJsonAsync<FetchData.WeatherForecast[]>("/sample-data/weather.json").GetAwaiter(); | |
if (!awaiter.get_IsCompleted()) | |
{ | |
this.<>1__state = num = 0; | |
this.<>u__1 = awaiter; | |
FetchData.<OnInitAsync>d__2 d__ = this; | |
this.<>t__builder.AwaitUnsafeOnCompleted<TaskAwaiter<FetchData.WeatherForecast[]>, FetchData.<OnInitAsync>d__2>(ref awaiter, ref d__); | |
return; | |
} | |
} | |
else | |
{ | |
awaiter = this.<>u__1; | |
this.<>u__1 = new TaskAwaiter<FetchData.WeatherForecast[]>(); | |
this.<>1__state = num = -1; | |
} | |
this.<>s__1 = awaiter.GetResult(); | |
this.<>4__this.forecasts = this.<>s__1; | |
this.<>s__1 = null; | |
} | |
catch (Exception exception) | |
{ | |
this.<>1__state = -2; | |
this.<>t__builder.SetException(exception); | |
return; | |
} | |
this.<>1__state = -2; | |
this.<>t__builder.SetResult(); | |
} | |
[DebuggerHidden] | |
private void SetStateMachine(IAsyncStateMachine stateMachine) | |
{ | |
} | |
} | |
private class WeatherForecast | |
{ | |
// Fields | |
[CompilerGenerated, DebuggerBrowsable(0)] | |
private DateTime <Date>k__BackingField; | |
[CompilerGenerated, DebuggerBrowsable(0)] | |
private int <TemperatureC>k__BackingField; | |
[CompilerGenerated, DebuggerBrowsable(0)] | |
private int <TemperatureF>k__BackingField; | |
[CompilerGenerated, DebuggerBrowsable(0)] | |
private string <Summary>k__BackingField; | |
// Properties | |
public DateTime Date { get; set; } | |
public int TemperatureC { get; set; } | |
public int TemperatureF { get; set; } | |
public string Summary { get; set; } | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment