カスタム属性を使用して、フォーム ポスト (支払いゲートウェイ) として投稿するために、クラスのメンバーをプロパティにマップする方法を定義しています。カスタム属性は正常に機能しており、「名前」で属性を取得できますが、メンバー自体で属性を取得したいと考えています。
例えば:
getFieldName("name");
対
getFieldName(obj.Name);
計画は、メンバーを持つクラスを投稿可能な文字列にシリアル化するメソッドを作成することです。
この時点でのテスト コードは次のとおりです。ret は文字列で、PropertyMapping はカスタム属性です。
foreach (MemberInfo i in (typeof(CustomClass)).GetMember("Name"))
{
foreach (object at in i.GetCustomAttributes(true))
{
PropertyMapping map = at as PropertyMapping;
if (map != null)
{
ret += map.FieldName;
}
}
}
前もって感謝します!