Explore WitRPC's powerful Discovery feature, inspired by WCF, designed to simplify dynamic network communications. Servers can effortlessly announce their availability via UDP multicast, broadcasting essential information like transport types, server names, and connection settings. Clients automatically detect these announcements, enabling quick and intuitive connections. Customize the Discovery…
Blazor WebAssembly unlocks powerful frontend development using pure C#, eliminating extensive HTML, CSS, or JavaScript. When combined with WitRPC, developers can achieve secure, seamless client-server communication—even overcoming browser limitations on cryptography. Explore two straightforward encryption approaches: disabling built-in encryption or integrating a custom JavaScript-based encryptor…
Explore the new static proxy feature in WitRPC, designed specifically for Ahead-of-Time (AoT) compilation environments like Blazor WebAssembly and .NET Native AOT. Unlike DynamicProxy, static proxies generated via Roslyn's Source Generation ensure compatibility, improve startup performance, and eliminate reflection overhead. Learn how to quickly implement static proxies by marking interfaces with…
Integrating legacy components with modern applications often presents complex challenges, especially when dealing with platform compatibility like mixing 32-bit and 64-bit processes. In this post, I introduce WitRPC, a high-performance successor to WCF, specifically built for seamless, full-duplex inter-process communication (IPC) in .NET. With native support for interfaces, event callbacks, and…
Aspect-oriented programming (AOP) offers an effective way to encapsulate cross-cutting concerns into reusable components called aspects. By separating these concerns from core business logic, AOP streamlines development, minimizes boilerplate code, and enhances maintainability. In this article, I introduce three practical aspects: Notify, Log, and Bindable, that I consistently use in my projects,…