我有一个包含参数名称及其值的对象列表。
我想在一个对象中生成序列化,参数名称为属性名称,值为值
示例:
public class Parameter
{
public string Name { get; set; }
public string Value { get; set; }
}
我有两个参数列表{Name =“name1”,Value =“value1”},{Name =“name2”,Value =“value2”}
我想要像这样对象:
new {“name1”=“value1”,“name2”=“value2”}
任何线索?
答案 0 :(得分:1)
一种方法是使用Dictionary(TKey, TValue)
,如果使用的序列化文件库支持它。
例如,使用Json.NET
将Dictionary(string, string)
序列化为JSON格式:
var parameters = new List<Parameter>
{
new Parameter { Name = "name1", Value = "value1" },
new Parameter { Name = "name2", Value = "value2" }
};
var objToSerialize =
parameters
.ToDictionary(
param => param.Name,
param => param.Value);
// Use Json.NET to serialize the dictionary
var result = JsonConvert.SerializeObject(objToSerialize);
// Outputs
// result = {"name1":"value1","name2":"value2"}