私はMVCプロジェクトを作成しました。デフォルトのビューとコントローラがあります。 2つの実テーブルとビュー(dbビュー)をカバーするように拡張されたモデルがあります。そのビューと少なくとも1つのテーブルは、データのソート後に表示する必要があります。私はモデルをオンラインで作成するという単純な例しか見ていません。私は何の単語を検索するか分からない。 index.cshtml
ビューにテーブルデータを注文するASP.NET MVCモデル
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);
}
}
}
が、私は行くことができます:だから、私はこのクラスを参照モデル定義を持って
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; }
}
}
デシベル・ビューの列を定義する独自のファイル内のクラスを持っていますそして
@model IEnumerable<ITG_Calendar_Reservations.Models.DockItemsByDept>
<div class="content">
@foreach (var log in Model)
{
<p>@log.Name</p>
}
</div>
と言っていますが、私はDBが生成するデフォルトの順序を取得しています。私はCode
フィールド、次にName
フィールドでソートされたこの「ビュー」データを必要としますが、そのような操作やフィルターをどこに適用するべきかはわかりません。私はと思ってこれはモデルになりますが、私はどこに行かなければならないのか分かりません。
アイデア?
ここの「XYZModel」は実際にはモデルではなく、プログラムとデータベースの間のモデルの状態を管理するためのコンテキストです。あなたは 'XYZContext'と呼ぶことができます。物事を少し理解しやすくするかもしれない。 – casperOne
uh、ok。私はあなたにこれについて全く議論していません。 Visual Studioはそれを「モデル」と呼び、初期DB接続をセットアップするときにその名前を付けました。 –