[英]Create Object and its Properties at Run-time from List
我需要在運行時創建動態對象及其屬性,然后創建此對象的實例來存儲值。
為什么我要上面的邏輯!
我在C#中讀取excel文件,第一行代碼是標題,它實際上是屬性,后面跟着每一行都是記錄,它是動態對象的實例。
List<string> ExcelDataHeader = new List<string>();
for (int y = 2; y <= colCount; y++)
{
ExcelDataHeader.Add(xlRange.Cells[headerRow, y].Value2.ToString());
}
dynamic MyDynamic = new System.Dynamic.ExpandoObject();
??????????
我需要在對象中返回excel讀取數據
你可以在這里使用ExpandoObject
- 它可以工作,但你需要使用字典API:
IDictionary<string, object> obj = new ExpandoObject();
obj["id"] = 123;
obj["name"] = "Fred";
// this is the "dynamic" bit:
dynamic dyn = obj;
int id = dyn.id; // 123
string name = dyn.name; // "Fred"
但是,我沒有看到這一點。 由於您不會通過obj.PropertyName
類的東西在C#代碼中引用該對象,因此dynamic
用途很少。 您也可以將每個記錄存儲在Dictionary<string,object>
或類似的中。 根據您描述的內容 ,您無法將MyDynamic
實際用作dynamic
對象。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.