Получить данные из подключенной 2 таблицы - PullRequest
0 голосов
/ 21 января 2019

Я создал 2 модели данных из существующей базы данных с моделью данных объекта ado net. Эти таблицы имеют отношение друг к другу. Первая таблица - это таблица категорий, а вторая таблица - это продукты. Так что в каждой категории есть много товаров. Я хочу отобразить в представлении некоторые столбцы категории и продукты, которые в той же категории. Я запутался в этой простой структуре. Я нахожусь вдали от MVC на некоторое время. Мне нужно решить эту проблему. Пожалуйста, помогите.

1 Ответ

0 голосов
/ 21 января 2019

Вам необходимо использовать View Models.Модель представления связана с архитектурными шаблонами MV * и используется для передачи данных в / из представления.Я постараюсь объяснить это простыми словами.Давайте рассмотрим, у вас есть две таблицы:

Сотрудник

---------------------------------------
| Id | Name       | Designation       |
---------------------------------------
| 1  | John Doe   | Software Engineer |
---------------------------------------
| 2  | John Smith | Test Engineer     |
---------------------------------------

Зарплата

----------------------------------------
| Id  | EmployeeId  | EmployeeSalary   |
----------------------------------------
| 1   | 1           | $10,000          |
----------------------------------------
| 2   | 2           | $10,000          |
----------------------------------------

Теперь для доступа к этим двумтаблиц в вашем коде, вы создали объекты данных с помощью ORM, и он создаст два класса:

Employee.cs

public class Employee
{
    public int Id { get; set; }

    public string Name { get; set; }

    public string Designation { get; set; }
}

Salary.cs

public class Salary
{
    public int Id { get; set; }

    public int EmployeeId { get; set; }

    public long EmployeeSalary { get; set; }
}

Теперь, чтобы использовать эти две модели для представления значимых данных в пользовательском интерфейсе, вы можете создать ViewModel со всеми необходимыми объектами данных и передать его через контроллер в представление:

EmployeeViewModel.cs

public class EmployeeViewModel
{
    public Employee EmployeeDetail { get; set; }

    public Salary EmployeeSalaryDetail { get; set; }
}

EmployeeController:

public class EmployeeController 
{
    public ActionResult Index()
    {
        var model = new EmployeeViewModel();
        return View(model);
    }
}

Для существенных различий между объектами данных и представлениеммодели, проверьте это; Можно ли создавать модели представлений из моделей, созданных из таблиц базы данных, используя подход базы данных Entity Framework DB?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...