如何将对象从WebAPI CORE 2.0传递到Angular 7?
如何将对象从WebAPI CORE 2.0传递到Angular 7? 请给我举个例子。 我在Angular 7中得到object=null,不明白为什么 Web Api控制器如何将对象从WebAPI CORE 2.0传递到Angular 7?,angular,asp.net-core-webapi,Angular,Asp.net Core Webapi,如何将对象从WebAPI CORE 2.0传递到Angular 7? 请给我举个例子。 我在Angular 7中得到object=null,不明白为什么 Web Api控制器 [HttpGet] [Produces("application/json")] [Route("ListArtists")] public JsonResult ListArtists() { var artists = _context.Artists.ToList(); return Json(new
[HttpGet]
[Produces("application/json")]
[Route("ListArtists")]
public JsonResult ListArtists()
{
var artists = _context.Artists.ToList();
return Json(new { results = artists });
}
POCO类
public class Artist
{
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int id
{
get; set;
}
public FakeData fake { get; set; }
}
public class FakeData
{
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int id { get; set; }
public string name { get; set; }
}
export class Artist {
id: number;
fake: FakeData;
}
export class FakeData {
id: number;
name: string;
}
角度模型
public class Artist
{
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int id
{
get; set;
}
public FakeData fake { get; set; }
}
public class FakeData
{
[Key]
[DatabaseGenerated(DatabaseGeneratedOption.Identity)]
public int id { get; set; }
public string name { get; set; }
}
export class Artist {
id: number;
fake: FakeData;
}
export class FakeData {
id: number;
name: string;
}
使用observable获取角度数据
getArtistsList(): Observable<Artist[]> {
return this.http.get<Artist[]>(this.myAppUrl + 'api/ArtistsLibrary/ListArtists');
}
您可以在webapi控制器中创建一个方法,在序列化为json格式后传递对象。 在angular中,您可以使用angular服务调用该路由来获取json。json可以以angular格式映射到所需的javascript对象中
[HttpGet]
[Produces("application/json")]
[Route("ListArtists")]
public IActionResult ListArtists()
{
var artists = _context.Artists.ToList();
return Ok(artists);
}
通过这种方式,您可以将C#对象从asp.net内核传递到Java中的javascript对象
[HttpGet]
[Produces("application/json")]
[Route("ListArtists")]
public IActionResult ListArtists()
{
var artists = _context.Artists.ToList();
return Ok(artists);
}
尝试检查url端点是否为您提供json数据。这是一个解析问题。请在此添加相关代码,可能是我所做的重复(我附上了我的代码)。但是在Angular 7中得到object=null。我已经改变了我的答案。尝试从浏览器或邮递员处调用url。如果它给出数据,请检查它给出的格式。由于您正在放置
艺术家的数组
,您的json结果应该包含在[]
中。我试过了。IActionResult和JsonResult都正确,我对webapi没有问题。邮递员对IActionResult和JsonResult都正确。Angular返回object Fakedata=null的问题。您是如何订阅的?