#model-view-controller #asp.net-core-mvc #angular9
#модель-представление-контроллер #asp.net-core-mvc #angular9
Вопрос:
У меня есть модель, определенная на стороне сервера .NET
public class ProductRetributionData
{
public int Id { get; set; }
int product { get; set; }
int type { get; set; }
string data { get; set; }
}
public class RetributionPlan
{
...
public List<ProductRetributionData> ProductRetributionData { get; set; }
}
и это аналог angular typescript
export interface ProductRetributionData
{
id: number,
product:number;
type: number,
data: string,
}
export interface RetributionPlan
{
...
productRetributionData : ProductRetributionData[]
}
и когда я отправляю запрос POST
сопоставлены все значения, но значения ВНУТРИ СПИСКА не
в Visual Studio, как ни странно, сопоставляется идентификатор, но 3 других значения пусты
, а поле типа по какой-то причине получает дополнительный @
есть идеи, что я делаю не так?
Спасибо
Ответ №1:
Связыватель модели связывает только общедоступные свойства, доступные для записи. Кроме того, придерживайтесь стандартов C #, сделайте свойства PascalCase, связующее по умолчанию не чувствительно к регистру. Так что меняйся:
public class ProductRetributionData
{
public int Id { get; set; }
int product { get; set; }
int type { get; set; }
string data { get; set; }
}
Для:
public class ProductRetributionData
{
public int Id { get; set; }
public int Product { get; set; }
public int Type { get; set; }
public string Data { get; set; }
}
Комментарии:
1. Я перепробовал много разных поисковых запросов и не смог найти дубликат. Уверен, что на этот вопрос уже был дан ответ.