I ended up using Expressions, an approach outlined by Marc Gravell that I found by following links off of spinon’s comment.
https://jonskeet.uk/csharp/miscutil/usage/genericoperators.html
More Related Contents:
- Arithmetic operator overloading for a generic class in C#
- Creating a Math library using Generics in C#
- How to capture value OOPS & Generic [closed]
- Create Generic method constraining T to an Enum
- Random.Next returns always the same values [duplicate]
- How to tell whether a point is to the right or left side of a line
- Why can’t the C# constructor infer type?
- Can’t operator == be applied to generic types in C#?
- Mod of negative number is melting my brain
- Generic Method Executed with a runtime type [duplicate]
- Null or default comparison of generic argument in C#
- c# covariant return types utilizing generics
- Passing a single item as IEnumerable
- Converting a generic list to a CSV string
- What is the easiest way to subtract time in C#?
- Anonymous Types – Are there any distingushing characteristics?
- Sorting an IList in C#
- c# compare two generic values [duplicate]
- Get all types implementing specific open generic type
- Parse string to enum type
- Calling generic method with Type variable [duplicate]
- Case insensitive access for generic dictionary
- Ambiguous call between two C# extension generic methods one where T:class and other where T:struct
- How do I tell if a type is a “simple” type? i.e. holds a single value
- Entity Framework – how do I get the columns?
- The given key was not present in the dictionary. Which key?
- Can you use “where” to require an attribute in c#?
- Get derived class type from a base’s class static method
- C# List: why you cannot do `List foo = new List();`
- How to use Activator to create an instance of a generic Type and casting it back to that type?