Это моя строка в индексном методе. Я пытаюсь преобразовать строку JSON в объект MultipleClasses и хочу отобразить ее в моем представлении. Но не могу этого сделать.
if (response.IsSuccessStatusCode)
{
data = response.Content.ReadAsStringAsync().Result;
MultipleClasses GetData = JsonConvert.DeserializeObject(data);
return View(GetData );
}
Это класс ViewModel
using ExternalAPIModule.Models;
using Microsoft.AspNetCore.Mvc.Rendering;
namespace ExternalAPIModule.ViewModel
{
public class MultipleClasses
{
public User? User;
public List? products { get; set; }
public List? variants;
}
}
Это мой класс модели (копирование как есть)
using Newtonsoft.Json;
//using static ExternalAPIModule.Models.User.Users;
using static ExternalAPIModule.Models.User;
namespace ExternalAPIModule.Models
{
public class User
{
public Users[] products { get; set; }
}
public class Users
{
[JsonProperty("id")]
public double? id { get; set; }
[JsonProperty("vendor")]
public string? vendor { get; set; }
[JsonProperty("title")]
public string? title { get; set; }
[JsonProperty("created_at")]
public string? created_at { get; set; }
public string? body_html { get; set; }
public variant[] variants { get; set; }
}
public class variant
{
public string? price { get; set; }
public string? compare_at_price { get; set; }
}
}
Как отобразить модель в представлении для отображения данных JSON? Я хочу преобразовать JSON в свое представление с помощью ViewModel в ASP.NET MVC.
В настоящее время я пытаюсь использовать это представление, которое выдает ошибку:
@model IEnumerable
@Html.DisplayNameFor(model => model.products.id)
@Html.DisplayNameFor(model => model.products.vendor)
@Html.DisplayNameFor(model => model.products.title)
@Html.DisplayNameFor(model => model.products.created_at)
@Html.DisplayNameFor(model => model.products.body_html)
@Html.DisplayNameFor(model => model.variant.price)
@Html.DisplayNameFor(model => model.variant.compare_at_price)
@foreach (var item in Model)
{
@Html.DisplayFor(modelItem => item.products.id)
@Html.DisplayFor(modelItem => item.products.vendor)
@Html.DisplayFor(modelItem => item.products.title)
@Html.DisplayFor(modelItem => item.products.created_at)
@Html.DisplayFor(modelItem => item.products.body_html)
@Html.DisplayFor(modelItem => item.variant.price)
@Html.DisplayFor(modelItem => item.variant.compare_at_price)
@Html.ActionLink("Edit", "Edit", new { /* id=item.PrimaryKey */ }) |
@Html.ActionLink("Details", "Details", new { /* id=item.PrimaryKey */ }) |
@Html.ActionLink("Delete", "Delete", new { /* id=item.PrimaryKey */ })
}
Подробнее здесь: https://stackoverflow.com/questions/787 ... on-classes
Невозможно создать представление из моделей, созданных из сложных классов JSON. ⇐ C#
Место общения программистов C#
1720490451
Anonymous
Это моя строка в индексном методе. Я пытаюсь преобразовать строку JSON в объект MultipleClasses и хочу отобразить ее в моем представлении. Но не могу этого сделать.
if (response.IsSuccessStatusCode)
{
data = response.Content.ReadAsStringAsync().Result;
MultipleClasses GetData = JsonConvert.DeserializeObject(data);
return View(GetData );
}
Это класс ViewModel
using ExternalAPIModule.Models;
using Microsoft.AspNetCore.Mvc.Rendering;
namespace ExternalAPIModule.ViewModel
{
public class MultipleClasses
{
public User? User;
public List? products { get; set; }
public List? variants;
}
}
Это мой класс модели (копирование как есть)
using Newtonsoft.Json;
//using static ExternalAPIModule.Models.User.Users;
using static ExternalAPIModule.Models.User;
namespace ExternalAPIModule.Models
{
public class User
{
public Users[] products { get; set; }
}
public class Users
{
[JsonProperty("id")]
public double? id { get; set; }
[JsonProperty("vendor")]
public string? vendor { get; set; }
[JsonProperty("title")]
public string? title { get; set; }
[JsonProperty("created_at")]
public string? created_at { get; set; }
public string? body_html { get; set; }
public variant[] variants { get; set; }
}
public class variant
{
public string? price { get; set; }
public string? compare_at_price { get; set; }
}
}
Как отобразить модель в представлении для отображения данных JSON? Я хочу преобразовать JSON в свое представление с помощью ViewModel в ASP.NET MVC.
В настоящее время я пытаюсь использовать это представление, которое выдает ошибку:
@model IEnumerable
@Html.DisplayNameFor(model => model.products.id)
@Html.DisplayNameFor(model => model.products.vendor)
@Html.DisplayNameFor(model => model.products.title)
@Html.DisplayNameFor(model => model.products.created_at)
@Html.DisplayNameFor(model => model.products.body_html)
@Html.DisplayNameFor(model => model.variant.price)
@Html.DisplayNameFor(model => model.variant.compare_at_price)
@foreach (var item in Model)
{
@Html.DisplayFor(modelItem => item.products.id)
@Html.DisplayFor(modelItem => item.products.vendor)
@Html.DisplayFor(modelItem => item.products.title)
@Html.DisplayFor(modelItem => item.products.created_at)
@Html.DisplayFor(modelItem => item.products.body_html)
@Html.DisplayFor(modelItem => item.variant.price)
@Html.DisplayFor(modelItem => item.variant.compare_at_price)
@Html.ActionLink("Edit", "Edit", new { /* id=item.PrimaryKey */ }) |
@Html.ActionLink("Details", "Details", new { /* id=item.PrimaryKey */ }) |
@Html.ActionLink("Delete", "Delete", new { /* id=item.PrimaryKey */ })
}
Подробнее здесь: [url]https://stackoverflow.com/questions/78720511/unable-to-create-view-from-models-created-from-complex-json-classes[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия