список не содержит определения для 'Patient_Name' и не содержит метода расширения 'Patient_Name' - PullRequest
0 голосов
/ 28 мая 2020

Я хочу выбрать данные из нескольких таблиц и просмотреть. Я создал следующие таблицы классов Orders:

public class Orders_Tables
    {
        public List<Lab_Orders>  LabOrders { get; set; }
        public List<Lab_orders_Cash> LabOrdersCash { get; set; }
        public List<Lab_Sample_status> LabOrderStatus { get; set; }

        public List<LAB_RESULTS> LabResults { get; set; }
        public List<LabTests> labtests { get; set; }
        public List<LAB_RESULTS_CLINIC_VIEW> labViewResult { get; set; }
        public List<LAB_RESULT_CASH_VIEW> labCashView { get; set; }

        public List<LAB_PARASITOLOGY_VIEW> labparaview { get; set; }

       public List<Lab_Hematology_Samples> LabSamples { get; set; }

      public List<Patients> patients { get; set; }

        public Orders_Tables()
        {
            this.LabOrders = new List<Lab_Orders>();
            this.LabOrdersCash = new List<Lab_orders_Cash>();
            this.LabOrderStatus = new List<Lab_Sample_status>();
            this.LabResults = new List<LAB_RESULTS>();
            this.labtests = new List<LabTests>();
            this.labViewResult = new List<LAB_RESULTS_CLINIC_VIEW>();
            this.labCashView = new List<LAB_RESULT_CASH_VIEW>();
            this.labparaview = new List<LAB_PARASITOLOGY_VIEW>();
            this.LabSamples = new List<Lab_Hematology_Samples>();
            this.patients = new List<Patients>();
        }


    } 

И это контроллер:

public ActionResult Cash(int id)
        {
            Orders_Tables tables = new Orders_Tables();
            tables.labCashView = db.LAB_RESULT_CASH_VIEW.Where(c => c.order_number == id).ToList();
            tables.labparaview = db.LAB_PARASITOLOGY_VIEW.Where(p => p.ORDER_ID == id).ToList();

            return View(tables);
        }

Затем я создал пустое представление, ошибка, когда я пытаюсь выбрать столбцы, я не могу его найти и ошибка появилась, когда я вставил имя столбца, это код представления:

@model IEnumerable<AljawdahNewSite.Models.Orders_Tables>
@{
    ViewBag.Title = "Cash";
    Layout = "~/Views/Shared/_LayoutPatients.cshtml";
}

    <div id="divprint">
        <div style="margin-left:15px">
            <hr />
            <dl class="horizontal" style="border:solid">
                <dt style="width: 20%;display: inline-block;color:blue;">@Html.DisplayNameFor(model => model.labCashView.Patient_Name)</dt>
                <dd style="width: 25%;display: inline-block;margin: 0px;margin-left:-50px">@Html.DisplayFor(model => model.FirstOrDefault().labCashView.Patient_Name)</dd>
                <dt style="width: 22%;display: inline-block;color:blue;">@Html.DisplayNameFor(model => model.labCashView.Customer_Name)</dt>
                <dd style="width: 25%;display: inline-block;margin: 0px;margin-left:0px">@Html.DisplayFor(model => model.FirstOrDefault().labCashView.Customer_Name)</dd>
              </dl>
        </div>

Ошибка появилась, когда я вставляю имя столбца: имя пациента, имя клиента и так далее ...

list lab_result_cash_view не содержит определения для 'Patient_Name' и никакого метода расширения 'Patient_Name', принимающего первый аргумент типа 'list lab_result_cash_view не может быть найден, если вам не хватает директивы using или ссылки на сборку

Как выбрать имя столбца в представлении?

1 Ответ

1 голос
/ 28 мая 2020

После комментария вы можете взять первый элемент и получить доступ к свойству, как следующий код:

@Html.DisplayNameFor(model => model.labCashView.First().Patient_Name)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...