妄想・想像・創造
×
[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。
同じプロパティ名を持つ、異なるClassがある場合、
自動転記とかしたいよね。今後、プロパティが増えたときも便利だし。
そういうときに、propertyInfo.SetValueを使うんだけど、
プロパティの型が違うと落ちてしまう。
なので、強引に回避。
ただし、valueがnullの場合、Convert.ChangeTypeが落ちてしまうので
nullの場合は、そのまま突っ込むようにしよう。
余談だけど、p.PropertyTypeがNullableの可能性もある。
その場合、下記のように値型を取得する。
自動転記とかしたいよね。今後、プロパティが増えたときも便利だし。
そういうときに、propertyInfo.SetValueを使うんだけど、
プロパティの型が違うと落ちてしまう。
なので、強引に回避。
TestClass obj = new TestClass();
string value = "ほげ";
PropertyInfo p = obj.GetType().GetProperty("HogeProperty");
pSetValue(obj,
Convert.ChangeType(value, p.PropertyType),
null);
ただし、valueがnullの場合、Convert.ChangeTypeが落ちてしまうので
nullの場合は、そのまま突っ込むようにしよう。
余談だけど、p.PropertyTypeがNullableの可能性もある。
その場合、下記のように値型を取得する。
if (p.PropertyType.IsGenericType)
{
if (p.PropertyType.GetGenericTypeDefinition() == typeof(Nullable<>))
{
// Nullableの場合、元の型を取得
// Nullable<int> → int
return Nullable.GetUnderlyingType(p.PropertyType);
}
}PR
IntelliSenseテキストが英語になってしまいます。
超不便です。
で、探し倒したら修正プログラムが出てました。
ここからダウンロード
「 Downloads 」タブから
「 VS90SP1-KB957507-JPN-x86.exe 」を
ダウンロードしてインストールして完了。
超不便です。
で、探し倒したら修正プログラムが出てました。
ここからダウンロード
「 Downloads 」タブから
「 VS90SP1-KB957507-JPN-x86.exe 」を
ダウンロードしてインストールして完了。
カレンダー
03 | 2025/04 | 05 |
S | M | T | W | T | F | S |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
カテゴリー
最新記事
(06/26)
(06/25)
(03/16)
(02/09)
(02/02)
プロフィール
HN:
編集長 黒幕
HP:
性別:
非公開
自己紹介:
京阪奈を中心に活動する自称ストリートミュージシャン。
目標は、唄って踊れる、さらに、ゴルフも上手い、さらに
字も綺麗なアーティスト。
最近、MCや物販が一人歩きで有名になり、
実際、唄うと
「あ~、この人唄えるんだぁ~」
みたいな目で見られることが多い。
また、スタッフと間違われること多し。
「あっ、ドリンク頼んで良いですか!」
目標は、唄って踊れる、さらに、ゴルフも上手い、さらに
字も綺麗なアーティスト。
最近、MCや物販が一人歩きで有名になり、
実際、唄うと
「あ~、この人唄えるんだぁ~」
みたいな目で見られることが多い。
また、スタッフと間違われること多し。
「あっ、ドリンク頼んで良いですか!」
ブログ内検索
カウンター