我正在尝试对我的服务进行后期休息.我的示例输入json文件是,
{"$ id":"1","description":"sfdasd"}
我有一个csv文件,其中包含一堆id和描述,那么有没有一个选项,我可以将csv文件转换为json对象并将它们传递给post调用?
XYZController.cs
[HttpPost]
public async Task<ActionResult> Post([FromBody] T inputContext)
{
       var outputContext = Process(inputContext);
       return StatusCode(200, outputContext );
}
Run Code Online (Sandbox Code Playgroud)
启动文件
public void ConfigureServices(IServiceCollection services)
{
     services.AddMvc().AddJsonOptions(options =>
            {
                UpdateJsonSettings.ConfigureJsonFormatter(options.SerializerSettings);
            });
}
Run Code Online (Sandbox Code Playgroud)
更新JsonSettings.cs
internal static void ConfigureJsonFormatter(JsonSerializerSettings settings)
{
       settings.ContractResolver = new CamelCasePropertyNamesContractResolver();
       settings.PreserveReferencesHandling = PreserveReferencesHandling.Objects;
       settings.Converters.Add(new StringEnumConverter());
}
Run Code Online (Sandbox Code Playgroud)
XYZ 控制器的 HttpResponse 尝试 1:
{ "$id": "1", "bill": { "$id": "2", "type": "TYPE1",
XYZ 控制器的 HttpResponse 尝试 2: -- 不以 $id 1 开头
{ "$id": "28", <--- 不知道为什么第二个请求 $ID 以 28 开头 …
函数需要返回Task<List<Record>>
以下两个选项都返回Task<List<Record>>,哪个更有效?这里有标准的方法吗?
选项1 :
Task<List<Record>> GetRecords()
{
    return 
    DbContext.Set<Record>.Where(predicate).ToListAsync();
}
Run Code Online (Sandbox Code Playgroud)
选项 2:
Task<List<Record>> GetRecords()
{
    return
    DbContext.Set<Record>.Where(predicate).AsAsyncEnumerable().ToList();
}
Run Code Online (Sandbox Code Playgroud) c# tolist async-await entity-framework-core iasyncenumerable