我试图将嵌套的Dictionary转换为其类型的嵌套类。 例如。我有这本词典:
{
"owner": {
"name": {
"first": "Linh",
"last": "Nguyen"
},
"age": "Nguyen"
},
"power": {
"index": "1",
"range": "5"
}
}
我有这个嵌套类:
public class AccountRegistrationViewModel
{
/// <summary>
/// Account owner.
/// </summary>
[Required]
public Owner Owner { get; set; }
/// <summary>
/// User age.
/// </summary>
[Required]
public int Age { get; set; }
/// <summary>
/// Account photo.
/// </summary>
[Required]
public List<HttpFile> Photos { get; set; }
}
public class Owner
{
public Name Name { get; set; }
}
public class Name
{
public string First { get; set; }
public string Last { get; set; }
}
我有这个功能:
T Convert<T>(IDictionary<string, object> input, Type classType)
{
// Do something.
return T;
}
在javascript中,执行此任务非常容易,但目前,我还不知道如何使用C#来完成此任务。
有人能帮助我吗?
谢谢,
答案 0 :(得分:0)
对于那些想要将嵌套字典转换为类的人。
实际上,我的问题是为Web API 2创建一个新的multipart / form-data格式化程序。我尝试过为Web API 2制作的一些格式化程序,但是在上传文件时它无法处理嵌套类。
https://gist.github.com/Danielku15/bfc568a19b9e58fd9e80 How create a MultipartFormFormatter for ASP.NET 4.5 Web API
Here是我的替代multipart / form-data格式化程序。
我的实施可能不是最好的,但至少我们可以在以后改进它。 感谢奇迹来自反思。