Estou replicando os passos executados na aula 04.03 (Lendo Arquivo Json de Produtos), e tentei fazer a lista utilizando a classe Produto, ao invés de criar uma classe Livro.
A lista é criada com todos os itens, mas todos eles estão com seus atributos "null". Gostaria de entender porque isso acontece.
Classe Produto
namespace CasaDoCodigo.Models
{
[DataContract]
public class BaseModel
{
[DataMember]
public int Id { get; protected set; }
}
public class Produto : BaseModel
{
public Produto()
{
}
[Required]
public string Codigo { get; private set; }
[Required]
public string Nome { get; private set; }
[Required]
public decimal Preco { get; private set; }
public Produto(string codigo, string nome, decimal preco)
{
this.Codigo = codigo;
this.Nome = nome;
this.Preco = preco;
}
}
Classe Livro
class Livro
{
public string Codigo { get; set; }
public string Nome { get; set; }
public decimal Preco { get; set; }
}
O trecho ficou:
public void InicializaDB()
{
contexto.Database.EnsureCreated();
var json = File.ReadAllText("livros.json");
var livros = JsonConvert.DeserializeObject<List<Produto>>(json);
}