Spezialisierung auf Blazor

Blazor-Entwicklung für Business-Anwendungen

ProCoding ist ein .NET-Studio in Split, Kroatien (EU). Unser Blazor-Code hilft beim Bau der schnellsten Elektroautos der Welt, steuert Batteriespeicher und Solaranlagen und verwaltet Ferienunterkünfte an der Adria.

Vlado Pandžić

Vlado Pandžić · Gründer · Senior .NET-Architekt
14 Jahre in .NET. Von 2020 bis 2024 Lead Backend Engineer bei Bugatti Rimac. Sie sprechen direkt mit ihm.

Pages/Orders.razor
@page "/orders"@rendermode InteractiveServer@inject IOrderService Orders <QuickGrid Items="orders" Virtualize="true">    <PropertyColumn Property="o => o.Number" Title="Order" Sortable="true" />    <PropertyColumn Property="o => o.Customer" />    <PropertyColumn Property="o => o.Total" Format="N2" /></QuickGrid> @code {    IQueryable<Order>? orders;     protected override async Task OnInitializedAsync()        => orders = (await Orders.GetOpenAsync()).AsQueryable();}
14
Jahre in .NET
2020
Blazor in Produktion seit
1.300+
Komponenten in einem einzigen Blazor-Portal
2013
Zusammenarbeit mit unserem längsten Kunden seit

Blazor in Produktion

Keine Demos. Systeme, mit denen Fabriken, Kraftwerke und Reiseunternehmen jeden Tag arbeiten.

Bugatti Rimac

Automobilindustrie

Kalibrierungs- und Diagnosesoftware, mit der die schnellsten Serien-Elektroautos der Welt gebaut werden. Eine Blazor-Webanwendung, die an der Produktionslinie mit Desktop-Tools zusammenarbeitet.

  • Kalibrierung
  • Diagnose
  • Web + Desktop

Ionian Energy Systems

Energie

Software, die Batteriespeicher und Solaranlagen steuert: wann geladen, wann entladen wird und was es einbringt. Gebaut auf .NET 9 mit einer Blazor-Oberfläche.

  • .NET 9
  • PostgreSQL
  • Batteriespeicher

Adriagate

Reisen

Das Backoffice einer Plattform für Ferienunterkünfte an der Adria: Objekte, Preise und Buchungen, verwaltet in Blazor auf einem bestehenden .NET-System.

  • Administration
  • Bestehendes System
  • Ferienunterkünfte
— — —

Europäisches Forschungsinstitut

Prüfung und Zertifizierung

Ein Kundenportal mit mehr als 1.300 Blazor-Komponenten, über das Hersteller die Prüfungen und Zertifikate ihrer Produkte verfolgen.

  • .NET 8
  • Blazor Web App
  • Kundenportal

Drei Wege zum Einstieg

Jeder hat ein definiertes Ergebnis, damit Sie wissen, wofür Sie bezahlen, bevor wir anfangen.

01

Blazor Health Check

FürTeams mit einer Blazor-App, die langsam, instabil oder schwer zu ändern ist.

Was wir prüfen
  • /Re-Renderings und Komponentenstruktur
  • /Grids, Virtualisierung und Paging
  • /Prerendering und Laden von Daten
  • /Serverspeicher und SignalR-Circuits
  • /Download-Größe von WebAssembly
  • /Authentifizierung, Secrets und Abhängigkeiten
Sie erhalten

Eine priorisierte Liste von Fixes, Sicherheitsbefunde und ein Termin mit Ihrem Team, in dem wir alles durchgehen.

Dauer
5 bis 10 Arbeitstage
Preis
Festpreis, vereinbart nach einem 30-minütigen Gespräch
02

Web-Forms-Migrationsanalyse

FürUnternehmen mit ASP.NET Web Forms, die einen Weg nach vorne brauchen, ohne den Betrieb anzuhalten.

Was wir prüfen
  • /Bestandsaufnahme von Seiten und Controls
  • /ViewState, Session und Authentifizierung
  • /Controls von Drittanbietern und Reports
  • /Ziel-Rendermodus für jede Seite
  • /Umstellungsplan, während die alte App weiterläuft
Sie erhalten

Eine Migrations-Roadmap mit Aufwandsspanne, Meilensteinen und Risiken.

Dauer
1 bis 2 Wochen
Preis
Festpreis, vereinbart nach einem 30-minütigen Gespräch
03

Entwicklungs- und Review-Kontingent

FürTeams, die in Blazor entwickeln und einen Senior Engineer auf Abruf wollen.

Was wir prüfen
  • /Feature-Entwicklung
  • /Code- und Architektur-Reviews
  • /Pairing und Mentoring
  • /Upgrades auf aktuelles .NET
Sie erhalten

Ein monatliches Stundenkontingent, eingesetzt für das, was in diesem Monat am wichtigsten ist.

Dauer
Monatlich, jederzeit kündbar
Preis
Stundensatz, monatliche Abrechnung

Probleme, die wir in Blazor-Apps beheben

Langsame Blazor-Apps sind selten die Schuld von Blazor. Fast immer ist es eines dieser fünf Probleme.

01

Alles wird bei jedem Klick neu gerendert

Zu große Komponenten, ein fehlendes @key in Listen und zu oft aufgerufenes StateHasChanged. Behoben durch das Aufteilen von Komponenten und die Kontrolle über ShouldRender.

02

Grids, die mit echten Daten einfrieren

Zehntausende Zeilen auf einmal gerendert. Virtualize und serverseitiges Paging machen sie wieder sofort nutzbar.

03

Daten, die beim ersten Aufruf doppelt geladen werden

Prerendering führt OnInitializedAsync zweimal aus. Persistierter Komponentenzustand entfernt den zweiten Aufruf.

04

Serverspeicher, der nur wächst

Event-Handler und Timer, die nie freigegeben werden, halten Circuits am Leben. IDisposable und korrekte Service-Lebensdauern stoppen das Leck.

05

Benutzer, deren Verbindung ständig abbricht

Abgebrochene SignalR-Circuits in unzuverlässigen Netzen. Reconnect-Handling und der richtige Rendermodus für jede Seite.

Der Blazor Health Check zeigt, welche davon Sie haben →

Von Web Forms zu Blazor, ohne den Betrieb anzuhalten

Die alte Anwendung verdient weiter Geld, während die Seiten eine nach der anderen umziehen. Kein Big-Bang-Release, keine eingefrorene Roadmap.

  1. 01

    Bestandsaufnahme

    Jede Seite, jedes Control, jeder Report und jede Abhängigkeit, mit markierten riskanten Stellen.

  2. 02

    Einen Proxy davorsetzen

    Ein Reverse Proxy (YARP) leitet jede URL an die alte oder die neue App weiter. System.Web-Adapter teilen Login und Session zwischen beiden.

  3. 03

    Seite für Seite umziehen

    Jede Seite wird in Blazor neu gebaut, meist als Interactive Server, und umgestellt, sobald sie fertig ist.

  4. 04

    Die alte App abschalten

    Wenn die letzte Seite umgezogen ist, wird die Web-Forms-Anwendung außer Betrieb genommen.

Starten Sie mit einer Web-Forms-Migrationsanalyse →

Web Forms

Orders.aspx
<asp:GridView ID="OrdersGrid" runat="server"    AutoGenerateColumns="false"    OnRowCommand="OrdersGrid_RowCommand">  <Columns>    <asp:BoundField DataField="Number" HeaderText="Order" />    <asp:BoundField DataField="Total" HeaderText="Total"        DataFormatString="{0:N2}" />    <asp:ButtonField CommandName="Approve" Text="Approve" />  </Columns></asp:GridView>

Blazor

Orders.razor
<QuickGrid Items="orders">    <PropertyColumn Property="o => o.Number" Title="Order" />    <PropertyColumn Property="o => o.Total" Format="N2" />    <TemplateColumn>        <button @onclick="() => Approve(context)">Approve</button>    </TemplateColumn></QuickGrid>

Wie wir Rendermodi auswählen

In .NET 10 kann jede Seite einen anderen Rendermodus verwenden. Das ist unser Standard für Geschäftsanwendungen.

RendermodusEinsetzen fürVermeiden, wenn
Statisches Server-RenderingÜberwiegend lesende Seiten, Reports, alles, was sofort laden und indexierbar sein soll.Die Seite braucht umfangreiche Interaktion ohne vollständiges Neuladen.
Interactive ServerUnser StandardInterne Geschäftsmasken in einem zuverlässigen Netzwerk. Unser Standard für Fachanwendungen.Benutzer haben unzuverlässige Verbindungen, oder es sind viele Tausende gleichzeitig.
Interactive WebAssemblyOffline-Nutzung, Benutzer mit hoher Latenz oder aufwendige Arbeit im Client.Ein schneller erster Ladevorgang ist wichtig, oder der Code muss auf dem Server bleiben.
Interactive AutoÖffentliche Apps, die schnell laden müssen und später im Browser laufen.Sie wollen keinen Code pflegen, der an beiden Orten läuft.

Passt gut, passt nicht

Blazor passt gut, wenn

  • +Ihr Team bereits mit C# und .NET arbeitet
  • +Sie Formulare, Grids, Dashboards und Workflows bauen
  • +Die App hinter einem Login liegt
  • +Sie Web-Forms-, Silverlight- oder WPF-Masken ersetzen

Blazor passt nicht, wenn

  • −Die Website überwiegend aus Marketinginhalten besteht, die in Suchmaschinen ranken müssen
  • −Ihr Team voll auf React setzt und damit zufrieden ist
  • −Sie den kleinstmöglichen Download über langsame Mobilnetze brauchen

Deshalb ist diese Website nicht in Blazor gebaut. Als Marketing-Website ist statisches HTML hier das bessere Werkzeug. Ihr Bestellsystem ist eine andere Geschichte.

Werkzeuge

Fragen

Ja. Blazor ist Teil von ASP.NET Core und erscheint mit jedem .NET-Release, und .NET 10 ist ein Long-Term-Support-Release mit Support bis November 2028. Microsoft investiert weiter in Blazor, mit Rendermodi in .NET 8 und weiteren Verbesserungen seitdem. Die Risiken in echten Projekten sind Architekturentscheidungen, nicht das Verschwinden des Frameworks.

Für interne Geschäftsanwendungen Interactive Server auf den meisten Seiten und statisches Rendering für reine Leseseiten. WebAssembly, wenn Benutzer offline oder weit entfernt sind, Auto, wenn eine öffentliche App schnell laden muss. Siehe Tabelle oben.

Ja. Web Forms läuft nur auf .NET Framework 4.8, das Sicherheitsupdates, aber keine neuen Funktionen mehr bekommt. Die Migration erfolgt Seite für Seite hinter einem Reverse Proxy, sodass die alte App weiterläuft, bis die letzte Seite umgezogen ist.

Für Geschäftsanwendungen, die von .NET-Teams gebaut werden, oft ja: eine Sprache, gemeinsame Modelle und kein separater Frontend-Stack. Für öffentliche, inhaltsreiche oder Consumer-Apps hat React das größere Ökosystem. Wir sagen Ihnen, was passt.

WPF, wenn die App eine Windows-Desktopanwendung bleiben muss. Blazor, wenn Benutzer sie über einen Browser erreichen sollen. Blazor Hybrid kann dieselben Komponenten auch in einer Desktop-App ausführen.

Meist aus einem von fünf Gründen: unnötige Re-Renderings, Grids ohne Virtualisierung, beim Prerendering doppelt geladene Daten, Serverspeicher, der ständig wächst, oder SignalR, das von WebSockets auf ein Fallback zurückfällt. Der Health Check zeigt, welche davon auf Sie zutreffen.

Health Check und Migrationsanalyse haben einen Festpreis, vereinbart nach einem 30-minütigen Gespräch. Entwicklung wird stundenweise oder als monatliches Stundenkontingent abgerechnet.

Ja. Oft ist es am sinnvollsten, für ein paar Wochen in ein bestehendes Team einzusteigen, die Architektur zu prüfen und beim Festlegen von Konventionen zu helfen.

Haben Sie eine Blazor-App, die Aufmerksamkeit braucht, oder eine Web-Forms-App, die umziehen muss?

Ein 30-minütiges Gespräch reicht, um zu sehen, ob wir helfen können und was der erste Schritt sein sollte.

30-minütiges Gespräch vereinbaren →
  • EU-Unternehmen in Split, Kroatien
  • Mitteleuropäische Arbeitszeiten
  • NDA auf Anfrage
  • Sie sprechen mit dem Engineer, der den Code schreibt

Hilfreich für Ihre Nachricht

  • /.NET-Version und Hosting
  • /Rendermodus, falls schon Blazor
  • /Anzahl der Benutzer
  • /Was gerade wehtut
[email protected]
[email protected]
© 2026 ProCoding — Alle Rechte vorbehalten.Impressum und DatenschutzSplit, Kroatien