【发布时间】:2015-04-23 05:03:34
【问题描述】:
我在从传入的视图模型类型的属性中获取值时遇到问题。这是我当前的方法,我相信属性的名称存储正确,但我似乎无法获得工作的价值。任何建议将不胜感激。我相信当值的类型并不总是字符串时我会遇到字典问题,但这是以后的另一个问题:)。
这里是采用viewmodel类型的方法:
public Type ConvertModel(Type mytype) {
Dictionary<string,string> dic = new Dictionary<string,string>();
foreach (var prop in mytype.GetProperties())
{
dic.Add(prop.Name, prop.GetValue(mytype,null).ToString());
}
//return mytype;
}
这是调用该方法的方式(忽略方法名称,我只是在尝试一个想法):
public ActionResult Index()
{
var viewmodel = new myViewModel()
{
FirstName = "Shawn",
LastName = "Michaels"
};
var newType = ConvertModel(viewmodel.GetType());
return View();
}
示例输出是我最终会传回与 viewModel 相关的另一个模型(例如 UserViewModel 和 UserModel,其中 UserModel 将填充 UserViewModel 属性和值,但该方法应包含在上述任何 2 个相关模型中。 )
【问题讨论】:
-
您需要发布您的类型和示例输出以便于理解
-
我使用该信息进行了编辑。
标签: c# asp.net dictionary foreach