diff options
Diffstat (limited to 'src/DevHive.Blazor/Pages')
| -rw-r--r-- | src/DevHive.Blazor/Pages/Counter.razor | 16 | ||||
| -rw-r--r-- | src/DevHive.Blazor/Pages/Error.cshtml | 42 | ||||
| -rw-r--r-- | src/DevHive.Blazor/Pages/Error.cshtml.cs | 32 | ||||
| -rw-r--r-- | src/DevHive.Blazor/Pages/FetchData.razor | 46 | ||||
| -rw-r--r-- | src/DevHive.Blazor/Pages/Index.razor | 7 | ||||
| -rw-r--r-- | src/DevHive.Blazor/Pages/_Host.cshtml | 35 |
6 files changed, 178 insertions, 0 deletions
diff --git a/src/DevHive.Blazor/Pages/Counter.razor b/src/DevHive.Blazor/Pages/Counter.razor new file mode 100644 index 0000000..ea07ff3 --- /dev/null +++ b/src/DevHive.Blazor/Pages/Counter.razor @@ -0,0 +1,16 @@ +@page "/counter"
+
+<h1>Counter</h1>
+
+<p>Current count: @currentCount</p>
+
+<button class="btn btn-primary" @onclick="IncrementCount">Click me</button>
+
+@code {
+ private int currentCount = 0;
+
+ private void IncrementCount()
+ {
+ currentCount++;
+ }
+}
diff --git a/src/DevHive.Blazor/Pages/Error.cshtml b/src/DevHive.Blazor/Pages/Error.cshtml new file mode 100644 index 0000000..9e1d3fa --- /dev/null +++ b/src/DevHive.Blazor/Pages/Error.cshtml @@ -0,0 +1,42 @@ +@page
+@model DevHive.Blazor.Pages.ErrorModel
+
+<!DOCTYPE html>
+<html>
+
+<head>
+ <meta charset="utf-8" />
+ <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no" />
+ <title>Error</title>
+ <link href="~/css/bootstrap/bootstrap.min.css" rel="stylesheet" />
+ <link href="~/css/app.css" rel="stylesheet" />
+</head>
+
+<body>
+ <div class="main">
+ <div class="content px-4">
+ <h1 class="text-danger">Error.</h1>
+ <h2 class="text-danger">An error occurred while processing your request.</h2>
+
+ @if (Model.ShowRequestId)
+ {
+ <p>
+ <strong>Request ID:</strong> <code>@Model.RequestId</code>
+ </p>
+ }
+
+ <h3>Development Mode</h3>
+ <p>
+ Swapping to the <strong>Development</strong> environment displays detailed information about the error that occurred.
+ </p>
+ <p>
+ <strong>The Development environment shouldn't be enabled for deployed applications.</strong>
+ It can result in displaying sensitive information from exceptions to end users.
+ For local debugging, enable the <strong>Development</strong> environment by setting the <strong>ASPNETCORE_ENVIRONMENT</strong> environment variable to <strong>Development</strong>
+ and restarting the app.
+ </p>
+ </div>
+ </div>
+</body>
+
+</html>
diff --git a/src/DevHive.Blazor/Pages/Error.cshtml.cs b/src/DevHive.Blazor/Pages/Error.cshtml.cs new file mode 100644 index 0000000..b18c4a6 --- /dev/null +++ b/src/DevHive.Blazor/Pages/Error.cshtml.cs @@ -0,0 +1,32 @@ +using System;
+using System.Collections.Generic;
+using System.Diagnostics;
+using System.Linq;
+using System.Threading.Tasks;
+using Microsoft.AspNetCore.Mvc;
+using Microsoft.AspNetCore.Mvc.RazorPages;
+using Microsoft.Extensions.Logging;
+
+namespace DevHive.Blazor.Pages
+{
+ [ResponseCache(Duration = 0, Location = ResponseCacheLocation.None, NoStore = true)]
+ [IgnoreAntiforgeryToken]
+ public class ErrorModel : PageModel
+ {
+ public string RequestId { get; set; }
+
+ public bool ShowRequestId => !string.IsNullOrEmpty(RequestId);
+
+ private readonly ILogger<ErrorModel> _logger;
+
+ public ErrorModel(ILogger<ErrorModel> logger)
+ {
+ _logger = logger;
+ }
+
+ public void OnGet()
+ {
+ RequestId = Activity.Current?.Id ?? HttpContext.TraceIdentifier;
+ }
+ }
+}
diff --git a/src/DevHive.Blazor/Pages/FetchData.razor b/src/DevHive.Blazor/Pages/FetchData.razor new file mode 100644 index 0000000..a496d0d --- /dev/null +++ b/src/DevHive.Blazor/Pages/FetchData.razor @@ -0,0 +1,46 @@ +@page "/fetchdata"
+
+@using DevHive.Blazor.Data
+@inject WeatherForecastService ForecastService
+
+<h1>Weather forecast</h1>
+
+<p>This component demonstrates fetching data from a service.</p>
+
+@if (forecasts == null)
+{
+ <p><em>Loading...</em></p>
+}
+else
+{
+ <table class="table">
+ <thead>
+ <tr>
+ <th>Date</th>
+ <th>Temp. (C)</th>
+ <th>Temp. (F)</th>
+ <th>Summary</th>
+ </tr>
+ </thead>
+ <tbody>
+ @foreach (var forecast in forecasts)
+ {
+ <tr>
+ <td>@forecast.Date.ToShortDateString()</td>
+ <td>@forecast.TemperatureC</td>
+ <td>@forecast.TemperatureF</td>
+ <td>@forecast.Summary</td>
+ </tr>
+ }
+ </tbody>
+ </table>
+}
+
+@code {
+ private WeatherForecast[] forecasts;
+
+ protected override async Task OnInitializedAsync()
+ {
+ forecasts = await ForecastService.GetForecastAsync(DateTime.Now);
+ }
+}
diff --git a/src/DevHive.Blazor/Pages/Index.razor b/src/DevHive.Blazor/Pages/Index.razor new file mode 100644 index 0000000..a4c47de --- /dev/null +++ b/src/DevHive.Blazor/Pages/Index.razor @@ -0,0 +1,7 @@ +@page "/"
+
+<h1>Hello, world!</h1>
+
+Welcome to your new app.
+
+<SurveyPrompt Title="How is Blazor working for you?" />
diff --git a/src/DevHive.Blazor/Pages/_Host.cshtml b/src/DevHive.Blazor/Pages/_Host.cshtml new file mode 100644 index 0000000..9c03a62 --- /dev/null +++ b/src/DevHive.Blazor/Pages/_Host.cshtml @@ -0,0 +1,35 @@ +@page "/"
+@namespace DevHive.Blazor.Pages
+@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers
+@{
+ Layout = null;
+}
+
+<!DOCTYPE html>
+<html lang="en">
+<head>
+ <meta charset="utf-8" />
+ <meta name="viewport" content="width=device-width, initial-scale=1.0" />
+ <title>DevHive.Blazor</title>
+ <base href="~/" />
+ <link rel="stylesheet" href="css/bootstrap/bootstrap.min.css" />
+ <link href="css/site.css" rel="stylesheet" />
+ <link href="DevHive.Blazor.styles.css" rel="stylesheet" />
+</head>
+<body>
+ <component type="typeof(App)" render-mode="ServerPrerendered" />
+
+ <div id="blazor-error-ui">
+ <environment include="Staging,Production">
+ An error has occurred. This application may no longer respond until reloaded.
+ </environment>
+ <environment include="Development">
+ An unhandled exception has occurred. See browser dev tools for details.
+ </environment>
+ <a href="" class="reload">Reload</a>
+ <a class="dismiss">🗙</a>
+ </div>
+
+ <script src="_framework/blazor.server.js"></script>
+</body>
+</html>
|
