通过直接字符串引用将值传递给实体
本文关键字:值传 实体 引用 字符串 | 更新日期: 2023-09-27 18:12:53
我知道这听起来有点模糊,所以我将提供编码解释。
假设我有一个实体:
public class Times
{
public int TimesId { get; set; }
public int DateRange { get; set; }
public String Days { get; set; }
}
和一个带有返回值的操作。我想根据传递给动作的"name"值在实体内部设置一个属性:
public JsonResult SaveValues(string name, int value)
{
//lets say: name = "TimesId"
times t = new times;
// t.name = should refer to t.TimesId and used to insert values like t.TimesId
t.name = value; // what I'm trying to acheive
}
有可能直接做这种引用吗?
使用反射,可以这样做:
Times t = new Times();
typeof(Times).GetProperty(name).SetValue(t, value);
现实地说,让你的SaveValues
接受Times
对象作为它的参数不是更好吗?然后你可以自己填充并保存反射
有可能直接做这种引用吗?
是的,你可以使用反射:
typeof(times).GetProperty(name).SetValue(t, value)