У меня есть маленький API с этими моделями с ef-core
public class AppUser : IdentityUser
{
public string FirstName { get; set; }
public string LastName { get; set; }
public string Company { get; set; }
public ICollection<Account> Accounts { get; set; }
}
public class Account
{
public int id { get; set; }
public AppUser User { get; set; }
public string AccountNumber { get; set; }
}
и у меня есть функция get контроллера:
[HttpGet]
public async Task<IActionResult> Home()
{
// retrieve the user info
//HttpContext.User
var userId = _caller.Claims.Single(c => c.Type == "id");
var user = await _appDbContext.Users.SingleAsync(c => c.Id == userId.Value);
return new OkObjectResult(new
{
Message = "This is secure API and user data!",
user.FirstName,
user.LastName,
user.Accounts
});
}
Как мне заставить контроллер вернуть список учетных записей? В отладке я вижу переменную «account» с правильными данными, я просто не уверен, как отформатировать этот var и вернуть его в api
Я сейчас получаю:
{
"message": "This is secure API and user data!",
"firstName": "Bill",
"lastName": "Johnson",
"serviceAccounts": null
}
ОБНОВЛЕНИЕ: Итак, я запустил приложение с помощью командной строки dotnet и получил
{"firstName":"Bill","lastName":"Johnson","serviceAccounts":[{"id":1,"camsUser":{"firstName":"Bill","lastName":"Johnson","company":null