动态类型赋值处理

有些时候我们定义类,而类中部分属性需要动态变化,这时我们需要定义动态属性:

 public class User
    {
        public string Id{ get; set; }

        public string Name { get; set; }

        public dynamic vars { get; set; }

    }

我们将字典(Dictionary)的值赋值给动态属性:

Dictionary<string, string> elements = new Dictionary<string, string>();
            elements.Add("keywork1", "1");
            elements.Add("keywork2", "2");
            elements.Add("keywork3", "3");
            elements.Add("keywork4", "4");
User user = new User();
user.vars = new System.Dynamic.ExpandoObject();
            if (elements != null && elements .Count > 0)
            {
                foreach (var e in elements)
                {
                    ((IDictionary<string, object>)user.vars).Add(e.Key, new Account() { account = e.Value });
                }
            }

 

posted @ 2019-03-26 14:36  Gylianger  阅读(335)  评论(0编辑  收藏  举报