将 IFile(JSON 文件)转换为 MyObject

Kip*_* ei 1 c# json.net asp.net-core-mvc

我上传了一个带有 HTML 表单的 JSON 文件,如第一段中所述。我一次只接受 1 个文件,所以这是我的控制器:

public IActionResult Upload(IFormFile file)
{
}
Run Code Online (Sandbox Code Playgroud)

现在我想将包含 JSON 的文件转换为对象。就像Cuong Le这个被接受的答案一样。如何将文件转换为 Let's say MyObject?我如何反序列化文件?(Newtonsoft 是要导入的库吗?)

M.S*_*M.S 5

您可以从文件中读取文本,然后转换为 JSON。你可以尝试这样的事情,

string fileContent = null;
       using (var reader = new StreamReader(file.OpenReadStream()))
       {
         fileContent = reader.ReadToEnd();
       }
   var result = JsonConvert.DeserializeObject<MyObject>(fileContent );
Run Code Online (Sandbox Code Playgroud)

是的,您可以使用 Newtonsoft NuGet 包进行反序列化。