Отображение данных в ASP.net на страницу cshtml - PullRequest
0 голосов
/ 20 октября 2019

Проще говоря, я не могу решить это. У меня есть класс (это правильное слово?), Который на данный момент собирает все данные из базы данных, которая мне нужна. Вы можете найти это в этом вопросе . Единственное основное отличие в том, что я изменил public ScriptList Index() на public ScriptList List().

Теперь я пытаюсь отобразить этот список на веб-странице, но я буквально понятия не имею, что я делаю неправильнои документация на самом деле мне не помогает (сначала речь идет о коде, и это не то, чем я здесь занимаюсь).

Я изначально попробовал что-то вроде этого:

@foreach(var item in Model.ScriptList)
{
    <h3>@item.Name</h3>
    <p>@item.ShortDescription</p>
    <br />
}

Это привело меня к ошибке:

Scripts.ScriptList 'не содержит определения для «ScriptList» и не имеет доступного метода расширения «ScriptList», принимающего первый аргумент типа «Scripts.ScriptList». 'может быть найдено (вы пропустили директиву using или ссылку на сборку?

Меня смущает, как, конечно, ScriptList.

Я нашел этот вопрос и принятое решение. Таким образом, я изменил @model Scripts на @model Scripts<ScriptList>, а затем выше на следующее:

@foreach(var item in Model)
{
    <h3>@item.Name</h3>
    <p>@item.ShortDescription</p>
    <br />
}

Это привело к ошибкам ниже.

Неуниверсальный тип «Сценарии» нельзя использовать с аргументом типаМентыНе удалось найти тип или имя пространства имен «ScriptList»

Я также попытался @model List<ScriptList> с @foreach(var ScriptItem in Model), что просто приводит к ошибке

Тип или имя пространства имен«ScriptList» не может быть найден

К сожалению, мой GoogleFu действительно не дал мне ответов, которые действительно помогли (мне) решить проблему, которую я получаю. Лучший результат от Google - это , который, кажется, не имеет отношения к проблеме, с которой я столкнулся. На самом деле все, кажется, связано со страницами входа в первые 5 результатов ... Ограничение результатов недавними событиями (в прошлом году) вызвало у меня проблему с пользователем на Windows Forms ... Очевидно, что этоодна из наиболее общих ошибок в C #, когда поиск ответа, связанного с вами, доставит мне много не связанных проблем.

Это ведет меня по пути чего-то другого, что в корне неверно с тем, что я сделалздесь, но я понятия не имею, что. К сожалению, как я уже сказал, документация здесь совершенно бесполезна, так как предполагает, что я использую SQLite (я использую SQL Server), поэтому сразу же выходит за рамки темы.

Итак, я просто упускаю здесь что-то фундаментальное? Как мне "получить доступ" к объекту ScriptsList List, который я сделал в файле .cs, и зациклить эти результаты? Это должно показаться тривиальной задачей, но мой поиск не дает мне ничего, чтобы помочь мне.


Редактировать: Я пытался переместить ScriptList (и связанные элементы) в совершенно другой классвызывается GetScripts вне класса Scripts.

Затем я добавил @data GetScripts в начало страницы и затем попытался @foreach(var ScriptItem in data.ScriptList), что привело к ошибке ниже:

Имя 'data' не существует в текущем контексте

При попытке @foreach(var ScriptItem in GetScripts.ScriptList) добавлена ​​ошибка

'GetScripts.ScriptList' - это тип, которыйнедопустимо в данном контексте

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