我有一个包含参数名和参数值的对象列表。
我想在单个对象中生成,序列化它,参数名作为属性名,值作为值
示例:
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”}
有线索吗?
一种方法是使用字典(TKey,TValue)
,如果所使用的序列化库支持它的话。
例如,使用JSON.net
将字典(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"}