The System.ComponentModel APIs are designed around synchronous patterns. This limits their use in modern applications where model binding, conversion, and validation frequently require asynchronous operations (database lookups, external service calls, async validation frameworks, etc.). As a result, developers must either block on async calls (leading to thread starvation and deadlocks) or duplicate logic outside the existing extensibility points.
We should consider first-class async support for these types to line up with validation support in frameworks like minimal APIs.
The
System.ComponentModelAPIs are designed around synchronous patterns. This limits their use in modern applications where model binding, conversion, and validation frequently require asynchronous operations (database lookups, external service calls, async validation frameworks, etc.). As a result, developers must either block on async calls (leading to thread starvation and deadlocks) or duplicate logic outside the existing extensibility points.We should consider first-class async support for these types to line up with validation support in frameworks like minimal APIs.