myCSharp.de - DIE C# und .NET Community
Willkommen auf myCSharp.de! Anmelden | kostenlos registrieren
 
 | Suche | FAQ

» Hauptmenü
myCSharp.de
» Startseite
» Forum
» FAQ
» Artikel
» C#-Snippets
» Jobbörse
» Suche
» Regeln
» Wie poste ich richtig?
» Forum-FAQ

Mitglieder
» Liste / Suche
» Wer ist wo online?

Ressourcen
» openbook: Visual C#
» openbook: OO
» Microsoft Docs

Team
» Kontakt
» Übersicht
» Wir über uns

» myCSharp.de Diskussionsforum
Du befindest Dich hier: Community-Index » Diskussionsforum » Entwicklung » Code-Reviews » [gelöst] RazorPages 'IndexModel' does not contain a definition for
Letzter Beitrag | Erster ungelesener Beitrag Druckvorschau | Thema zu Favoriten hinzufügen

Antwort erstellen
Zum Ende der Seite springen  

[gelöst] RazorPages 'IndexModel' does not contain a definition for

 
Autor
Beitrag « Vorheriges Thema | Nächstes Thema »
mchrd mchrd ist männlich
myCSharp.de-Mitglied

avatar-229.gif


Dabei seit: 27.10.2018
Beiträge: 17
Entwicklungsumgebung: Visual Studio 2017, VS Code


mchrd ist offline

[gelöst] RazorPages 'IndexModel' does not contain a definition for

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Hallo zusammen,

ich bearbeite gerade ein Tutorial zum Thema RazorPages. Leider erhalte ich im Gegensatz zum Tutorial eine Fehlermeldung. Ich weiß wirklich nicht woran es liegen könnte und wäre über einen Tipp dankbar.

Die AccessModifier habe ich geprüft, aber daran sollte es nicht liegen.

Index.cshtml

C#-Code:
@page
@model IndexModel
@{
}
<br />
<h2>Book List</h2>
<br />
<a asp-page="Create" class="btn btn-primary">Create New Book</a>

@if (Model.Books.Count() > 0)
{
    <form method="post">
<div>
    <br />
    <table class="table table-condensed table-hover">
        <tr><th>@Html.DisplayNameFor(m => m.Books.FirstOrDefault().ISBN)</th></tr>
        </table>"

</div>
</form>
}
else
{
    <p>No books found.</p>
}

Fehlermeldung:
Severity Code Description Project File Line Suppression State
Error CS1061 'IndexModel' does not contain a definition for 'Books' and no accessible extension method 'Books' accepting a first argument of type 'IndexModel' could be found (are you missing a using directive or an assembly reference?) BookListRazor C:\BookListRazor\BookListRazor\Pages\BookList\Index.cshtml 10 Active

Severity Code Description Project File Line Suppression State
Error CS1061 'IndexModel' does not contain a definition for 'Books' and no accessible extension method 'Books' accepting a first argument of type 'IndexModel' could be found (are you missing a using directive or an assembly reference?) BookListRazor C:\BookListRazor\BookListRazor\Pages\BookList\Index.cshtml 16 Active

Index.cshtml.cs

C#-Code:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Mvc;
using Microsoft.AspNetCore.Mvc.RazorPages;
using Microsoft.EntityFrameworkCore;

namespace BookListRazor.Model.BookList
{
    public class IndexModel : PageModel
    {


        private ApplicationDbContext _db;

        public IndexModel(ApplicationDbContext db)
        {
            _db = db;
        }

        public IEnumerable<Book> Books { get; set; }
        public string SomeData { get; set; }

        public async void OnGet()
        {
            Books = await _db.Books.ToListAsync();
        }
    }
}

Folgendes ist installiert:
Microsoft.AspNetCore.App 2.1.1
Microsoft.AspNetCore.Razor.Design 2.1.2
Microsoft.EntityFrameworkCore.Sqlite 2.1.4
Microsoft.EntityFrameworkCore.Tools 2.1.4
Microsoft.NETCore.App 2.1.0


Über Tipps wäre ich dankbar!

Ich wünsche euch einen schönen Abend!




Der Folgende Abschnitt ist nicht mehr wichtig. Den Beitrag habe ich nochmal editiert, da ich einen Fehler schon lösen konnte. Wie weiß ich leider nicht, da immer noch die gleichen Pakete installiert sind. Das einzige was ich gemacht hatte, war das dotnet-sdk-2.2.103 runtergeladen und auf dem PC installiert. An den Installationen im Projekt habe ich nichts gemacht.

Ganz unabhängig von dieser Fehlermeldung habe ich leider noch folgende Fehlermeldungen:

Fehlermeldung:
Severity Code Description Project File Line Suppression State
Error Package restore failed. Rolling back package changes for 'BookListRazor'.

Severity Code Description Project File Line Suppression State
Error NU1107 Version conflict detected for Microsoft.EntityFrameworkCore. Install/reference Microsoft.EntityFrameworkCore 2.2.1 directly to project BookListRazor to resolve this issue.
BookListRazor -> Microsoft.EntityFrameworkCore.Sqlite 2.2.1 -> Microsoft.EntityFrameworkCore.Sqlite.Core 2.2.1 -> Microsoft.EntityFrameworkCore.Relational 2.2.1 -> Microsoft.EntityFrameworkCore (>= 2.2.1)
BookListRazor -> Microsoft.AspNetCore.App 2.1.1 -> Microsoft.EntityFrameworkCore (>= 2.1.1 && < 2.2.0). BookListRazor C:\BookListRazor\BookListRazor\BookListRazor.csproj 1

Leider weiß ich nicht, wie ich das Problem lösen kann, jedoch muss ich zugeben, dass ich nicht mal wirklich die Fehlermeldung verstehe (nicht von der Sprache, sondern inhaltlich). Ich habe das Projekt mit Asp.net Core 2.1 erstellt (Target Framework ist auch 2.1).

Dieser Beitrag wurde 6 mal editiert, zum letzten Mal von mchrd am 09.02.2019 12:40.

08.02.2019 22:35 Beiträge des Benutzers | zu Buddylist hinzufügen
mchrd mchrd ist männlich
myCSharp.de-Mitglied

avatar-229.gif


Dabei seit: 27.10.2018
Beiträge: 17
Entwicklungsumgebung: Visual Studio 2017, VS Code

Themenstarter Thema begonnen von mchrd

mchrd ist offline

Beitrag: beantworten | zitieren | editieren | melden/löschen       | Top

Hab die Lösung gefunden: Einfach auf der ViewPage @using MyNamespace verwenden. Dann funktioniert es. Warum es im Tutorial so geht und bei mir nicht weiß ich dennoch nicht. Falls das jemand weiß, dann gerne her mit der Info :)
09.02.2019 12:40 Beiträge des Benutzers | zu Buddylist hinzufügen
Baumstruktur | Brettstruktur       | Top 
myCSharp.de | Forum Der Startbeitrag ist älter als ein Jahr.
Der letzte Beitrag ist älter als ein Jahr.
Antwort erstellen


© Copyright 2003-2020 myCSharp.de-Team | Impressum | Datenschutz | Alle Rechte vorbehalten. | Dieses Portal verwendet zum korrekten Betrieb Cookies. 01.04.2020 04:03