C# Corner
Tech
News
Videos
Forums
Trainings
Books
Live
More
Interviews
Events
Jobs
Learn
Career
Members
Blogs
Challenges
Certifications
Bounties
Contribute
Article
Blog
Video
Ebook
Interview Question
Collapse
Feed
Dashboard
Wallet
Learn
Achievements
Network
Refer
Rewards
SharpGPT
Premium
Contribute
Article
Blog
Video
Ebook
Interview Question
Register
Login
Tags
No tag found
Content Filter
Articles
Videos
Blogs
Resources
News
Forums
Interviews
Complexity Level
Beginner
Intermediate
Advanced
Refine by Author
[Clear]
Aarav Patel(17)
Riya Patel(12)
Niharika Gupta(7)
Saurav Kumar(5)
Ananya Desai(5)
Nagaraj M(5)
Nidhi Sharma(4)
Rikam Palkar(4)
Ajay Narkhedkar(2)
Sudarshan Hajare(2)
Ng Cheehou(2)
Kaveendra Dhilhan(2)
Tanuj (2)
Subash S(2)
Rohit Gupta(2)
Sandeep Kumar(2)
Nabaraj Ghimire(2)
Prasad Phakade(2)
Tuhin Paul(1)
Wit Tarnowski(1)
Ketan Sathavara(1)
Parthiv Suthar(1)
Suraj Vishwakarma(1)
Brajesh Kumar(1)
Kesavan V(1)
Henil Patel(1)
Sandhiya Priya(1)
Parag Banerjee(1)
subramanya m(1)
Amira Bedhiafi(1)
Priya Prajapati(1)
Abiola David(1)
Chethan N(1)
Krish Kanakiya(1)
Kethareeswaran N(1)
Mariem Moalla(1)
Guest User(1)
Micheal Xavier A (1)
Sardar Mudassar Ali Khan (1)
Resources
No resource found
Entity Framework Core 10 Performance Tuning: 25 Production Optimization Techniques
Jul 24, 2026.
Master EF Core 10 performance! Discover 25 production optimization techniques for faster, scalable .NET data access. Boost your app's speed.
Garbage Collection in C#: How .NET Automatically Manages Memory
Jul 23, 2026.
Learn how .NET's Garbage Collection automatically manages C# memory, preventing leaks and improving app reliability by reclaiming unused objects.
Inside the .NET Garbage Collector: How Mark, Sweep, Compact, and Finalization Really Work in C#
Jul 23, 2026.
Understand the .NET GC's Mark, Sweep, Compact, and Finalization phases. Learn how it efficiently reclaims memory and keeps your C# apps running smoothly.
Model Context Protocol (MCP) Explained for .NET Developers
Jul 24, 2026.
Learn how Model Context Protocol (MCP) standardizes AI tool interaction for .NET developers, simplifying integrations with external systems.
Understanding __new__ vs __init__ in Python: Allocation, Initialization, and Object Pooling
Jul 18, 2026.
Demystify Python's __new__ vs __init__: understand object creation, subclassing immutables, and implementing powerful patterns like Object Pooling.
Model Context Protocol (MCP) Explained: The Future of AI Tool Integration
Jul 16, 2026.
Unlock AI's potential with Model Context Protocol (MCP)! Standardize tool integration for seamless, scalable, and secure AI applications.
Model Context Protocol Registries Explained: Managing Enterprise MCP Ecosystems
Jul 16, 2026.
Learn what Model Context Protocol (MCP) Registries are, how they work, and how enterprises use them to manage, secure, and scale AI tool ecosystems.
SeaweedFS Tutorial: Building Scalable Object Storage for Cloud-Native Applications
Jul 16, 2026.
Learn how SeaweedFS works, its architecture, deployment process, and how to build scalable object storage for cloud-native applications using open-source technology.
SpiceDB Explained: Implementing Fine-Grained Authorization at Scale
Jul 16, 2026.
Learn how SpiceDB works, its relationship-based authorization model, and how to implement fine-grained access control for scalable modern applications.
OpenBao Explained: The Open-Source Alternative to HashiCorp Vault
Jul 16, 2026.
Learn how OpenBao provides secure secrets management, dynamic credentials, encryption services, and centralized access control for modern applications.
Model Context Protocol (MCP) Explained for .NET Developers
Jul 14, 2026.
Understand Model Context Protocol (MCP) for .NET developers. Standardize AI integrations with tools, databases, and APIs for scalable, secure applications.
What Is Model Context Protocol (MCP) Registry? A Complete Guide
Jul 13, 2026.
Discover the MCP Registry: a central hub for AI tools, simplifying discovery, management, and sharing of Model Context Protocol servers for robust AI applications.
MCP Servers in Practice: Building Secure Tool Integrations for AI Agents
Jul 13, 2026.
Discover MCP Servers for secure AI agent tool integrations. Standardize, simplify, and enhance security for dynamic external system access.
Model Context Protocol (MCP) Gateways Explained: Securing Enterprise AI Integrations
Jul 10, 2026.
Secure your enterprise AI integrations with MCP Gateways. Learn how this protocol enforces security, governance, and control for AI access to your critical business systems.
Understanding Agent-to-Agent (A2A) Protocol for Multi-Agent Systems
Jul 10, 2026.
Discover the Agent-to-Agent (A2A) Protocol: the standardized framework enabling AI agents to communicate, collaborate, and exchange information seamlessly.
Asynchronous Programming in Java: A Simple Guide With Examples
Jul 08, 2026.
Master asynchronous programming in Java! Learn to build responsive apps with CompletableFuture, ExecutorService, and best practices for I/O, APIs, and more.
SeaweedFS Tutorial: Building Scalable Object Storage Systems
Jul 09, 2026.
Master SeaweedFS for scalable object storage. Learn its architecture, benefits, and best practices for building efficient, high-performance distributed systems.
SpiceDB Explained: Implementing Fine-Grained Authorization at Scale
Jul 09, 2026.
SpiceDB centralizes fine-grained authorization for complex apps, moving beyond RBAC to relationship-based access control for scalability and consistency.
Delegates in C# Explained with Simple and Real Project Examples
Jul 07, 2026.
Master C# delegates! Learn how they decouple code, enable callbacks, and power ASP.NET Core, LINQ, and events with simple examples.
Building AI Agents with Model Context Protocol (MCP): A Beginner’s Guide
Jul 06, 2026.
Learn about Model Context Protocol (MCP), a standardized way for AI agents to connect with tools, databases, and APIs, simplifying development and enhancing capabilities.
How to Set Item-Level Permissions in SharePoint Using Power Automate
Jul 06, 2026.
Master SharePoint item-level permissions with Power Automate. Secure sensitive data by breaking inheritance and assigning unique access.
How to access Environment Variables in Power Pages using Site Settings
Jul 06, 2026.
Learn to access Power Pages Environment Variables via Site Settings, avoiding hardcoded values for better maintainability and dynamic configuration.
Specification Pattern in C#
Jul 05, 2026.
Master the Specification Pattern in C# to avoid method explosion. Represent business rules as reusable, composable objects for cleaner, flexible code.
Building AI Applications Using Model Context Protocol (MCP) Proxies
Jul 03, 2026.
Learn how Model Context Protocol (MCP) proxies standardize AI application communication with external tools, enabling scalable and secure integrations.
Building Flexible EF Core Queries with Query Objects
Jun 27, 2026.
Master EF Core query flexibility with Query Objects. Build reusable, composable queries for maintainable, efficient data retrieval.
Access Token vs Refresh Token: A Simple Explanation (and the Interview Questions That Trip People Up)
Jun 26, 2026.
Understand access vs. refresh tokens for secure logins. Master interview questions on JWT security, revocation, and storage trade-offs.
Building a Production-Grade Object Storage Migration Tool Using Node.js and AWS S3
Jun 23, 2026.
Build a production-grade object storage migration tool with Node.js and AWS S3, covering architecture, challenges, and best practices for scalability.
Mastering .NET Interviews – Part 6: Entity Framework & Data Access
Jun 20, 2026.
Master .NET interviews: Dive into Entity Framework (EF) & data access. Learn EF Core, LINQ, migrations, transactions, and common interview questions.
Model Context Protocol (MCP) Security: Preventing Prompt Injection and Tool Hijacking
Jun 08, 2026.
Learn how to secure Model Context Protocol (MCP) applications by preventing prompt injection, tool hijacking, unauthorized access, and other AI security threats using proven enterprise security practices.
How to Build Custom MCP Servers in C# for Enterprise AI Applications
Jun 08, 2026.
Learn how to build custom MCP servers in C# for enterprise AI applications. Discover MCP architecture, security best practices, tool development, authentication, and real-world integration patterns.
How MCP Apps Are Changing AI Tool Integration Workflows
Jun 08, 2026.
Learn how MCP Apps are transforming AI tool integration workflows by providing standardized access to APIs, databases, business systems, and enterprise resources through the Model Context Protocol.
AI Agent Governance: Managing Permissions, Auditing, and Compliance
Jun 08, 2026.
Learn how to implement AI agent governance in enterprise .NET applications using permissions, auditing, compliance controls, role-based access management, and monitoring best practices.
Building AI Agents with Model Context Protocol (MCP) Step by Step
Jun 05, 2026.
Learn how to build AI agents with Model Context Protocol (MCP). Explore MCP architecture, tools, servers, clients, and step-by-step implementation examples.
Entity Framework Core Interceptors: Real-World Use Cases and Examples
Jun 05, 2026.
Learn Entity Framework Core Interceptors with real-world examples. Implement auditing, soft deletes, SQL logging, and performance monitoring in EF Core applications.
Implementing OAuth 2.0 and OpenID Connect in ASP.NET Core
Jun 05, 2026.
Learn how to implement OAuth 2.0 and OpenID Connect in ASP.NET Core. Secure applications with authentication, authorization, tokens, and Single Sign-On.
Understanding Microsoft Entra ID Tenant Object Quota
Jun 03, 2026.
Understanding Microsoft Entra ID Tenant Object Quota: What It Is, Why It Matters, and How to Manage It
AI Agent Security Risks and Best Practices Every Developer Should Know
Jun 04, 2026.
Learn the top AI agent security risks, including prompt injection, data exposure, and excessive permissions, along with best practices for building secure AI systems.
Amazon SQS Explained: Building Reliable Message Queues
Jun 03, 2026.
Learn Amazon SQS with real-world examples. Understand Standard Queues, FIFO Queues, Dead Letter Queues, and build reliable message-driven applications.
TypeScript Interfaces vs Type Aliases: Complete Comparison
Jun 03, 2026.
Learn the differences between TypeScript Interfaces and Type Aliases. Compare features, use cases, examples, and best practices for modern TypeScript projects.
Implementing Row-Level Security in SQL Server
Jun 03, 2026.
Learn how to implement Row-Level Security in SQL Server. Secure data access, restrict rows by user, and simplify multi-tenant application security.
MCP vs APIs: Will Model Context Protocol Replace Traditional Integrations?
May 29, 2026.
Explore Model Context Protocol (MCP) and its potential impact on AI integrations. Will it replace APIs? Learn how MCP enhances AI's understanding of tools and workflows.
SharePoint Detailed Permission Report using PnP PowerShell
May 26, 2026.
Generate a detailed SharePoint permission report (sites, libraries, folders, files) using PnP PowerShell. Identify access, unique permissions, and group members.
How to Create Security Groups and Manage Access in Power Apps & SharePoint
May 25, 2026.
Learn how to create security groups in Power Platform to manage user access and permissions effectively. Secure your data and streamline administration with this guide.
Why Postman Web Cannot Access Your Localhost
May 21, 2026.
Fix Postman Web's 'Cloud agent cannot send request to localhost' error! Learn how to connect to your local API using the Desktop Agent, Ngrok, or the full app. Quick solutions inside!
Build AI Agents in .NET with MCP: A Step-by-Step Guide
May 14, 2026.
Learn how to build robust AI agents in .NET using MCP! Avoid common pitfalls like the 'Happy Path' trap and create agents that handle real-world user scenarios effectively.
Difference Between Object.is and Object.assign in JavaScript
May 12, 2026.
Unlock the nuances of JavaScript objects! This guide clarifies Object.is() for precise value comparisons and Object.assign() for efficient object merging and cloning.
Building a reusable access management layer on Databricks with Python, Notebooks and Genie spaces
May 10, 2026.
What if access requests in Databricks could be handled like a real product instead of a manual admin task? In this article, I show how I built a reusable access management with Python, Git backed Databricks repos, notebooks and Genie Spaces to turn business friendly access requests into governed Unity Catalog permissions. The result is a cleaner, auditable and more scalable way to manage access while also validating the end user experience through natural language data exploration.
Schrödinger's AI Part 14.2: ReviewMyCode MCP Server: Core Implementation
May 10, 2026.
Let me show you how to create MCP server for code review
Schrödinger's AI Part 14.3: ReviewMyCode MCP Server: Rules & Extensibility
May 10, 2026.
Let me teach you how to create MCP server in .Net to review your C# code
Schrödinger's AI Part 13: Let’s Build an MCP Server with .NET
May 06, 2026.
Build an MCP (Model Context Protocol) server with .NET! This tutorial guides you through creating a weather app server, connecting it to AI clients, and leveraging external tools.
Why Passwordless Authentication Is the Future of Secure Access
May 01, 2026.
Discover why passwordless authentication is revolutionizing secure access. Learn how biometrics, security keys, and authenticator apps replace vulnerable passwords, enhancing security and simplifying user experience. Explore the benefits, challenges, and practical steps for adopting this future-proof security method, reducing cyber risks and improving efficiency for individuals and organizations.
How to Map DTOs Using AutoMapper in .NET with Example
Apr 14, 2026.
Simplify .NET object mapping with AutoMapper! Learn how to use DTOs to protect data, reduce code, and improve API performance with our step-by-step guide.
How to Implement Role-Based Access Control (RBAC) in Web Applications
Apr 14, 2026.
Secure your web apps with Role-Based Access Control (RBAC)! Learn to implement RBAC in ASP.NET Core & web applications for enhanced security and simplified access management.
Mastering Entity Framework Core: Essential Skills for Modern .NET Developers
Apr 13, 2026.
Master Entity Framework Core for .NET! Learn essential skills, boost productivity, and build efficient, scalable data-driven applications. A must-have skill!
OOP in C# — Deeper Understanding for Freshers
Apr 10, 2026.
Unlock the power of OOP in C#! This beginner-friendly guide simplifies encapsulation, inheritance, polymorphism, and abstraction with real-world examples. Build better C# applications!
Why Custom URLs in Azure Databricks Are a Game-Changer for Enterprise Teams
Apr 09, 2026.
Simplify Azure Databricks access with custom URLs! Learn how this enterprise feature creates a unified, branded entry point, improving user experience and governance. Say goodbye to juggling multiple workspace URLs!
Difference Between Dapper and Entity Framework Core and Which One Should You Use?
Apr 10, 2026.
Explore Dapper vs. Entity Framework Core in .NET for data access. Discover which ORM suits your needs based on performance, control, and development speed. Learn when to use each, or both!
How Do I Implement a Hybrid Data Access Layer Using Both Dapper and EF Core in a .NET Application?
Apr 10, 2026.
Combine EF Core & Dapper in .NET for optimal data access! Use EF Core for CRUD, Dapper for speed. Boost performance & simplify complex queries. Learn how!
How to Implement Repository and Unit of Work with Entity Framework
Apr 09, 2026.
Implement Repository and Unit of Work patterns in ASP.NET Core with EF Core 10 for clean, testable, and maintainable data access. Improve architecture and performance.
What Is the Repository Pattern in C# and How to Implement It Step by Step?
Apr 03, 2026.
Learn the Repository Pattern in C# step-by-step! Discover how to separate data access logic, improve code maintainability, and build scalable ASP.NET Core apps.
What Is TypeScript Interface vs Type Alias and When to Use Which?
Apr 03, 2026.
Unlock the power of TypeScript! Learn the difference between Interface and Type Alias with clear examples. Choose the right tool for object shapes, unions, and more!
What Is SOLID Principles in Object Oriented Programming With Real Examples
Apr 03, 2026.
Master SOLID principles (SRP, OCP, LSP, ISP, DIP) in OOP with real-world C# examples. Write clean, maintainable, and scalable code for robust applications.
Getting Started with Playwright MCP: AI-Powered Test Automation Without Code (Architecture, Setup & Guide)
Apr 01, 2026.
Explore Playwright MCP (Model Context Protocol) and how it transforms browser automation using AI agents and natural language. This article covers MCP fundamentals, Playwright MCP architecture, setup, tools, and the complete AI-driven testing workflow.
What Is Model Context Protocol (MCP)?
Apr 02, 2026.
Discover Model Context Protocol (MCP): a standardized framework for AI models to connect securely with external tools. Simplify integration and boost scalability!
How to Fix DeletingCloudOnlyObjectsNotAllowed in Microsoft Entra
Mar 31, 2026.
Fix "DeletiCloudOnlyObjectsNotAllowed" after moving disabled accounts to an unsynced OU in Entra ID. Learn how to resolve sync errors and restore proper hybrid identity.
Understanding Permission Levels in SharePoint Online
Mar 30, 2026.
Understand SharePoint Online permission levels: Full Control, Design, Edit, Contribute, and Read. Learn how to manage user access and ensure data security effectively.
How to Fix “Object Reference Not Set to an Instance of an Object” in C#?
Mar 31, 2026.
Master the dreaded 'Object reference not set' error in C#! Learn to identify, fix, and prevent NullReferenceExceptions with practical C# and ASP.NET Core examples.
Model Context Protocol (MCP): The Missing Bridge Between AI and Your Tools
Mar 31, 2026.
What if your AI assistant could directly query your database, browse files, push code to GitHub, and send a Slack message — all in one conversation? That's exactly what the Model Context Protocol (MCP) makes possible
Immutability: The Secret Weapon for Reliable C# Applications
Mar 29, 2026.
Unlock the power of immutability in C# for building reliable applications! Learn how immutable objects prevent bugs, ensure thread safety, and simplify debugging. Master the secret weapon for robust .NET software.
Monkey Patching in Python: What It Is and How to Use It
Mar 29, 2026.
Learn what monkey patching in Python is and how to use it safely in real projects. This practical guide shows what monkey patching does, how it works, when to use it, and how to avoid common mistakes.
Beginner's Guide: Authentication & Authorization in Modern Applications
Mar 27, 2026.
Unlock the secrets of secure apps! This beginner's guide demystifies authentication and authorization, explaining how your data is protected when you log in and use modern applications. Learn the fundamentals of privacy and security online.
How the .NET Garbage Collector Actually Thinks
Mar 27, 2026.
Demystify .NET garbage collection! Learn how it manages memory, optimizes performance, and impacts your C# code. Understand generations, LOH, and best practices.
Difference Between Abstract Class and Interface in C#
Mar 26, 2026.
Unlock the power of C#! Learn the difference between abstract classes and interfaces with clear explanations, examples, and use cases. Write cleaner, scalable code!
What is the Difference Between Docker and Kubernetes in Simple Terms?
Mar 25, 2026.
Understand Docker vs. Kubernetes! Docker containerizes apps, while Kubernetes orchestrates them for scaling and management. Essential for modern development.
What is OAuth 2.0 and How Does It Work in Modern Applications?
Mar 25, 2026.
Unlock the secrets of OAuth 2.0! Learn how this authorization framework secures user data access in modern apps, APIs, and cloud systems without passwords. A must-read for developers!
Lightweight Directory Access Protocol (LDAP)
Mar 25, 2026.
LDAP: Centralized authentication for enterprises. Securely manage users, simplify logins, and integrate systems. A scalable solution for robust identity management.
How to Implement Role Based Access Control (RBAC) in Web Applications
Mar 23, 2026.
Secure your web apps with Role Based Access Control (RBAC)! Learn how to implement RBAC, manage user permissions, and improve security. A practical guide with examples.
Label Distribution Protocol (LDP)
Mar 23, 2026.
LDP automates label distribution in MPLS networks, enabling fast packet forwarding and reducing IP lookup overhead. Improves scalability and simplifies operations.
MCP in .NET: How to Connect Your Applications to AI Using the Model Context Protocol
Mar 22, 2026.
Unlock AI integration in .NET using MCP! This guide covers building MCP servers with C#, exposing tools, resources, and prompts for AI agents. Future-proof your apps!
What Is OAuth 2.0 and How Does It Work in API Authentication?
Mar 16, 2026.
OAuth 2.0 secures APIs by using tokens instead of passwords, granting limited access to user data. Learn how it works, its components, and benefits for apps.
AI Agent–Tool Abstraction Architecture
Mar 16, 2026.
Build robust AI apps with LangChain & MCP! LangChain orchestrates tasks, while MCP secures tool access. Modular, scalable, & secure AI architecture.
Understanding Core Tailwind CSS Utilities with Simple Diagrams
Mar 12, 2026.
Unlock Tailwind CSS potential! This guide uses diagrams to explain core utilities like flex, spacing, and typography for faster, consistent UI development.
How Can Developers Enforce Strong Access Control in Enterprise Applications?
Mar 13, 2026.
Secure enterprise apps with strong access control! Learn RBAC, ABAC, authentication, API security, & monitoring for data protection & compliance.
Deep Dive into Object-Oriented Programming (OOP) in C#
Mar 11, 2026.
Explore Object-Oriented Programming (OOP) in C# with this deep dive! Learn core concepts, internal anatomy, and the four pillars to build robust applications. Master OOP!
What Practices Help Protect Sensitive Data in Backend Systems?
Mar 11, 2026.
Protect backend systems with encryption, access control, and secure authentication. Safeguard databases and use data masking to prevent data breaches. #backendsecurity
Implementing Login with Authentication and Authorization in React (JWT + Axios)
Mar 11, 2026.
Secure your React apps! This guide implements JWT authentication with Axios, covering login flow, project structure, API calls, and token management. Build a robust and scalable system.
What are the challenges in maintaining scene consistency in AI video generation?
Mar 10, 2026.
Explore the technical hurdles in AI video generation: maintaining scene consistency. Learn about character identity, object stability, and temporal continuity.
How to securely store secrets and API keys in cloud applications?
Mar 09, 2026.
Protect cloud apps! Learn secure storage of secrets & API keys. Avoid hardcoding, use secret managers, rotation, encryption, & access control for robust security.
The Future of Authorization, RBAC + ABAC + PBAC
Mar 09, 2026.
Unlock flexible authorization! Combine RBAC, ABAC, and PBAC for enhanced security, scalability, and centralized policy management in modern applications.
Builder Pattern in C#
Mar 07, 2026.
Master the Builder Pattern in C# for elegant object creation! Simplify complex object construction with step-by-step implementation and improve code maintainability.
Amazon Simple Queue Service (SQS)
Mar 05, 2026.
Amazon SQS: A fully managed message queue service for decoupling microservices and enabling reliable asynchronous communication in AWS. Boost scalability!
Amazon Simple Notification Service (SNS)
Mar 05, 2026.
Amazon SNS: A fully managed pub/sub messaging service for sending notifications to multiple subscribers simultaneously. Ideal for decoupling services and event notifications.
Choosing Your Data Access Strategy in .NET: ADO.NET vs. Dapper vs. Entity Framework
Mar 05, 2026.
Unlock optimal .NET data access! Compare ADO.NET, Dapper, and Entity Framework Core for performance, productivity, and control. Choose the right tool for the job!
Preventing Sensitive Information Disclosure (PII) by AI Agents
Mar 06, 2026.
Secure AI agents by preventing PII disclosure! Implement layered security with input filtering, access control, and output guards for data privacy and compliance.
Prototype Pattern in C#
Mar 04, 2026.
Learn the Prototype pattern in C#! Clone objects instead of creating them from scratch for efficiency. Includes shallow vs. deep copy examples & benefits.
What Is the Model Context Protocol (MCP) and How Can Developers Implement It?
Mar 05, 2026.
MCP is a standardized protocol enabling AI models to interact with external tools & data sources securely. It simplifies integration & boosts AI capabilities.
How to Securely Store and Manage Secrets in Applications?
Mar 05, 2026.
Protect your apps! Learn secure secret management: avoid hardcoding, use encryption, access controls, rotation, & monitoring. Fortify cloud & distributed environments.
Garbage Collection Internals in .NET: How Memory Management Really Works
Mar 03, 2026.
Unlock .NET's garbage collection secrets! Explore generational memory management, LOH behavior, GC modes, and optimization techniques for high-performance C# apps.
MoltWorker on Cloudflare Workers: What it is and How to deploy OpenClaw agents at the edge
Mar 02, 2026.
Learn what MoltWorker is and how to deploy OpenClaw agents on Cloudflare Workers, with simple steps, key safeguards, and real-world use cases.
Schrödinger's AI Part 8: Inside the Model Context Protocol
Feb 28, 2026.
The MCP)is a universal, open-source standard that replaces brittle, custom AI integrations with a secure "plug-and-play" architecture. It enables AI models to move beyond a text box and interact directly with databases, files, and APIs through a standardized, model-agnostic bridge.