我将以下for unique_class in df['Classification'].unique():
class_df = df[df['Classification'] == unique_class].copy()
result1, result2 = call_attribution_function(class_df)
overall_results1.append(result1)
overall_results2.append(results2)
发送到api
json
我想将其映射到以下内容:
{
"Id":22,
"UserId":22,
"Payload":{
"Field":"some payload value"
...more unknown field/values go here
},
"ContextTypeId":1,
"EventTypeId":1,
"SessionId":1
}
当映射 public class CreateTrackItem : IRequest<int>
{
public int Id { get; set; }
public int UserId { get; set; }
public string Payload { get; set; }
public int ContextTypeId { get; set; }
public int SessionId { get; set; }
public int EventTypeId { get; set; }
}
属性失败时,无法将Payload
映射到字符串,我只是希望json
是Payload
的{{1}}版本(将进入string
中的json
字段中)
我正在使用.NET Core 3.0,并且希望在切换到jsonb
之前尽可能使用内置的postgres
。
答案 0 :(得分:0)
您可以使用对象类型代替字符串。或使用Newtonsoft的JToken类型,如Ryan上面已经提到的那样。
公共对象有效载荷{get;组; }
public class CreateTrackItem : IRequest<int>
{
public int Id { get; set; }
public int UserId { get; set; }
public object Payload { get; set; }
public int ContextTypeId { get; set; }
public int SessionId { get; set; }
public int EventTypeId { get; set; }
}
答案 1 :(得分:0)
如果您正在使用asp.net core 3.0,则它具有内置的JSON支持。我已经使用了以下内容,并且无需设置自定义输入处理程序即可使用该功能。
[HttpPost]
public async Task<IActionResult> Index([FromBody] JsonElement body)
{
string json = System.Text.Json.JsonSerializer.Serialize(body);
return Ok();
}