亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

測試動態變量上的屬性是否可用

測試動態變量上的屬性是否可用

C#
HUWWW 2019-11-13 15:13:06
我的情況很簡單。在我的代碼的某個地方,我有這個:dynamic myVariable = GetDataThatLooksVerySimilarButNotTheSame();//How to do this?if (myVariable.MyProperty.Exists)   //Do stuff因此,基本上我的問題是如何檢查(不引發異常)動態變量上是否有某個屬性可用。我可以,GetType()但是我寧愿避免這種情況,因為我真的不需要知道對象的類型。我真正想知道的只是一個屬性(或方法,如果使生活更輕松)是否可用。有指針嗎?
查看完整描述

3 回答

?
qq_遁去的一_1

TA貢獻1725條經驗 獲得超8個贊

我認為dynamic除非您重新實現了在C#編譯器中處理動態綁定的方式,否則就無法在不嘗試訪問變量的情況下找出變量是否具有某個成員。根據C#規范,這可能包括很多猜測,因為它是實現定義的。


因此,如果失敗,您實際上應該嘗試訪問該成員并捕獲異常:


dynamic myVariable = GetDataThatLooksVerySimilarButNotTheSame();


try

{

    var x = myVariable.MyProperty;

    // do stuff with x

}

catch (RuntimeBinderException)

{

    //  MyProperty doesn't exist


查看完整回答
反對 回復 2019-11-13
  • 3 回答
  • 0 關注
  • 329 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號