If your serialize a string, best to use (as pointed by Marcus)
return Ok(model)
The return type when using Ok method though depends on who your ASP.NET Core application is configured and which formatters are installed (by default only Json Formatter, but you could also install an Xml formatter) and which type the browser prefers. If the browser requests xml and you have xml formatter installed, it will return xml. If the browser requests json and json formatter is installed, it will return json. Otherwise fall back to whatever best suits.
If your data is already serialized as string (cause it comes from DB, filesystem etc.), use
return Content(jsonData, "application/json");
If your data is a file, just use
return PhysicalFile("my.json", "application/json");
If it's a stream
return File(fileStream, "application/json");
etc.