:すべてのタイプを処理するためにリフレクションを使用するにはどうすればよいですか?私はこのような多くのユーティリティ機能を実行するためにしようとしていた
public bool HasMember(object obj, string name)
{
etc.
}
この特定の効用関数の名前と意味は関係ありません。
残念ながら、上記の関数は、構造体であるDateTimeやDecimalなどのすべての型を処理できません。整数やカスタムオブジェクトをうまく扱います。私は、C#は構造体とオブジェクトの両方を持ち、構造体はオブジェクトではないことを理解しています。しかし、どのように私のユーティリティメソッドですべての型を扱うことができますか?非常に多くのユーティリティ関数が必要であるため、オーバーロードされたメソッドはありません。
前の研究:
は、言語リファレンスが私にアドバイスを与えていない:https://docs.microsoft.com/en-us/dotnet/articles/csharp/programming-guide/classes-and-structs/using-structs
また値型説明するテキストをなしヘルプ:どのようなタイプのC#の値でhttps://docs.microsoft.com/en-us/dotnet/articles/csharp/language-reference/keywords/value-types
は、「すべての種類を扱うことができません」 - なぜか?あなたが私に叫んだ稀な量のコードからすぐにはっきりと分かることはありません。 "これは' DateTime'では機能しません。問題を示す*完全なコードサンプルを投稿できますか? –
今、私はそれを得る。構造体は、オブジェクトから継承するValueTypeというクラス(!)から継承します。[ここには参考のためにMSサイトへのリンクがあります](https://msdn.microsoft.com/en-us/library/system.valuetype(v = vs.110 ).aspx) – iltelko
* "構造体はオブジェクトではありません" * *** C#の***はすべてオブジェクトです! –