簡體   English   中英

從靜態類c#訪問匿名對象屬性

[英]Access anonymous object property from static class c#

我有一個帶有多個匿名對象的靜態類。 每個對象具有不同數量的屬性,但每個屬性始終是已創建類的對象。

static public class Fields{
    static public Object FieldInfo1 = new {
        Customer = new FieldInformation("value1","value2")        
    } 

    static public Object FieldInfo2 = new {
        Customer = new FieldInformation("value1","value2"),
        Company = new FieldInformation("value1","value2"),        
    } 
}

我嘗試在第二個類(Program.cs,它是一個控制台應用程序)中訪問Fields.FieldInfo1.Customer但它不起作用,我只獲得Fields.FieldInfo1. 我究竟做錯了什么?

您需要將其強制轉換為對象的類型。 因為你有非(在編譯時)強制轉換as dynamic

var obj = Fields.FieldInfo1 as dynamic;
var value = obj.Customer.Prop1; // "value1"

但我不明白為什么你需要這樣做。 這不是C#like,這是一種強類型語言。 在我看來,你應該重新考慮你的設計。

可能會為您提供何時使用匿名類型的起點

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM