首頁 > 後端開發 > C++ > 可以動態修改 .NET 執行時期屬性嗎?

可以動態修改 .NET 執行時期屬性嗎?

Susan Sarandon
發布: 2025-01-04 04:22:38
原創
361 人瀏覽過

Can You Modify .NET Runtime Attributes Dynamically?

運行時屬性自訂

在開發過程中,儘管第三方供應商施加了限制,但仍會出現需要在運行時修改屬性的情況。考慮一個具有以下屬性的類別:

public class UserInfo
{
    [Category("change me!")]
    public int Age
    {
        get;
        set;
    }
    [Category("change me!")]
    public string Name
    {
        get;
        set;
    }
}
登入後複製

在運行時修改實例

與感知相反,屬性實例可以在運行時修改。透過取得屬性實例,我們可以進行值修改,例如:

ASCII[] attrs1 = (ASCII[])
    typeof(MyClass).GetCustomAttributes(typeof(ASCII), false);
attrs1[0].MyData = "A New String";
MessageBox.Show(attrs1[0].MyData);
登入後複製

保留未更改的屬性值

需要注意的是,後續呼叫檢索屬性實例將不受運行時修改的影響:

ASCII[] attrs3 = (ASCII[])
    typeof(MyClass).GetCustomAttributes(typeof(ASCII), false);
 MessageBox.Show(attrs3[0].MyData); // Original value
登入後複製

以上是可以動態修改 .NET 執行時期屬性嗎?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板