iOS 向けの C# Mono 開発には、Apple がコードをプリコンパイルする必要があるため、特定の制限があります。つまり、JIT コンパイルは許可されません。このため、Reflection.Emit などの呼び出しはサポートされていません。しかし、iOS 用にコンパイルされた C# で C# ダイナミクスを使用できるかどうかは疑問です。
例えば:
repository.Find(repository.UserName == "ジョン");
ここで「リポジトリ」は、静的メソッド「Find」と動的プロパティ「UserName」を持つ動的オブジェクトです。このアプローチは、すべての最新の Windows ベースの .NET プラットフォームでうまく機能します。Android 用の Mono でも機能すると思います。しかし、MonoTouch はどうでしょうか。原則として、ランタイム情報に基づいて動的プロパティを動的に解決するための制限があってはなりません - Apple が得意とする法的な制約がない限り。