Ich habe ein MVC-Projekt erstellt. Es gibt eine Standardansicht und einen Controller. Es gibt ein Modell, das erweitert wurde, um zwei reale Tabellen und eine Ansicht (DB-Ansicht) abzudecken. Diese Ansicht und mindestens eine der Tabellen müssen NACH dem Sortieren der Daten angezeigt werden. Ich sehe nur "einfache" Beispiele für die Online-Erstellung von Modellen. Ich bin mir nicht sicher, welche Wörter ich suchen soll. So habe ich eine Klasse in einer eigenen Datei, die die Spalten in einer db-Ansicht definiertASP.NET MVC-Modelle, die Tabellendaten bestellen
using System.Data.Entity;
namespace XYZ_dbo.Models {
using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
using System.Data.Entity.Spatial;
using System.Linq;
using System.Text;
[Table("dbo.DockItemsByDept")]
public partial class DockItemsByDept
{
public int Id { get; set; }
[Required]
[StringLength(128)]
public string Name { get; set; }
public int Dept { get; set; }
public int Code { get; set; }
}
}
ich eine Modelldefinition haben, der diese Klasse verweist:
using System.Data.Entity;
namespace XYZ.Models
{
public partial class XYZModel : DbContext
{
public XYZModel()
: base("name=XYZModel")
{
}
public virtual DbSet<DockItemsByDept> DockItemsByDept { get; set; }
protected override void OnModelCreating(DbModelBuilder modelBuilder)
{
modelBuilder.Entity<DockItemsByDept>()
.Property(e => e.Id);
modelBuilder.Entity<DockItemsByDept>()
.Property(e => e.Name)
.IsUnicode(false);
modelBuilder.Entity<DockItemsByDept>()
.Property(e => e.Dept);
modelBuilder.Entity<DockItemsByDept>()
.Property(e => e.Code);
}
}
}
Ich kann die index.cshtml
Ansicht gehen in und sagen
@model IEnumerable<ITG_Calendar_Reservations.Models.DockItemsByDept>
<div class="content">
@foreach (var log in Model)
{
<p>@log.Name</p>
}
</div>
aber ich bekomme nur die Standard-Bestellung der DB generiert. Ich möchte, dass diese "Ansicht" -Daten nach dem Feld Code
und dann nach dem Feld Name
sortiert werden, aber ich habe keine Ahnung, wo solch eine Operation oder ein Filter angewendet werden sollte. I dachte das wäre in dem Modell, aber ich sehe nicht, wo es gehen sollte und ich finde nichts nützliches, wenn ich nach einer Antwort suche.
Ideen?
Ihr 'XYZModel' ist hier nicht wirklich ein Modell, es ist ein Kontext, der dazu dient, den Zustand der Modelle zwischen Ihrem Programm und der Datenbank zu verwalten. Sie können es "XYZContext" nennen. Es kann die Dinge ein wenig leichter verständlich machen. – casperOne
uh, ok. Ich diskutiere Sie überhaupt nicht darüber. Visual Studio nannte es ein "Modell" und gab ihm diesen Namen, als es die anfängliche DB-Verbindung einrichtete. –