7. 某年的冬天
Data Storage
Backend
Framework
Data Access
(Business Logic)
Layer
Design
Patterns
Frontend
Framework
Presentation
Layer
Azure SQL Database Server
.NET Framework 4.7.2
Nhibernate
4.0
MVC*
HTML5
ADO.NET
DDD**
.NET Core 2.1
ASP.NET Core API
EF. Core 2.1
MVVM***
React.JS
ReactAdmin
前端 ASP.NET 4.x
Different
Design Patterns
Different
Front-end stack
Restrict UI
後台Admin Portal
React + ASP.NET Core 2.1
8. Cloud Hosting . Frontend Framework
Programming Language Backend Framework
ReactAdmin
Limited UI components
Lack of support in
Community Edition
Potential vendor lock-
out risk with a start-up
company Marmelab
founded in 2016
Microsoft
Eco-system
隔年的春天,我們做了一個成功的migration
9. B l a z o r 對 我 來 說 是 ?
WebForms Razor Page SPA
21. Render Razor components from JavaScript #2
let containerElement = document
.getElementById('my-counter’);
await Blazor.rootComponents
.add(containerElement,
'counter’,
{ incrementAmount: 10 });
ASP.NET Core Razor components | Microsoft Docs
22. Generate Angular and React components
var builder = WebAssemblyHostBuilder.CreateDefault(args);
builder.RootComponents.RegisterForAngular<MyComponent>();
builder.RootComponents.RegisterForReact<MyComponent>();
samples/samples/aspnetcore/blazor/JSComponentGeneration at main · aspnet/samples (github.com)
23. Error boundary
<div class="main">
<div class="content px-4">
<ErrorBoundary>
@Body
</ErrorBoundary>
</div>
</div>
Handle errors in ASP.NET Core Blazor apps | Microsoft Docs
RenderMode Enum (Microsoft.AspNetCore.Mvc.Rendering) | Microsoft Docs
WebForms=>大到不能倒的時候
Xenoage/BlazorInAngularDemo: Demonstrates how an existing Angular app can be migrated to Blazor gradually by integrating Blazor components, including calling Angular service methods. (github.com)
https://youtu.be/-thoDIEshl8
https://youtu.be/-thoDIEshl8
2 ways of hosting Blazor WebAssembly:
Hosted: Served from an ASP.NET application
APIs hosted in ASP.NET
Standalone: Served as static files
Call APIs anywhere
Serverless functions work great