私は.NET MVC5
のプロジェクトに取り組んでいます。最初のアプローチを使用して、データベーステーブルを作成しました。インデックスページの2つの異なる部分(データベースのカテゴリ)または同じデータベーステーブル。同じデータベーステーブルのLINQを使用して、1つのWebページの2つの異なる部分のデータを取得する方法はありますか?
"最近のイベント"という名前の部分の1つでうまく動作する以下のコントローラを作成しましたが、 "Featured_Events"という名前のホームページの2番目の部分のレコードを取得しようとすると困惑します。同じコントローラを使用していますか?
最初はロジックが両方の部分でうまく動作するようにしたいが、熟練者が自分の投稿を読んでいる場合には、親切にも、私は注目イベントの部分で特定のレコード数を取得する方法を教えてください。最近のイベントで8件のレコードを取得していますが、「おすすめのイベント」セクションで12件のレコードを取得したいのですが?
これはコントローラです:
public ActionResult Index()
{
var result = (from i in _context.consult
orderby i.date_of_event descending
where i.category == "recent_events"
select i).Take(8);
return View(result);
}
ただ、さらに明確化のために:私は、データを取得するためにforeach
ループを使用してビューで:FOR
@model Ienumurable <Example.Models.consultation>
CODE: 例として、それはこのようになります最近の出来事の一部
@foreach (var recent in Model)
{
if (@recent.category == "recent_events")
{
<p>@recent.date</p>
<p>@recent.details</p>
}
}
CO特集イベントのための部分
@foreach (var featured in Model)
{
if (@featured.category == "featured_events")
{
<p>@featured.date</p>
<p>@featured.details</p>
}
}
誰でもこの点について私を助けることができたら本当にうれしいです。
親愛なるアンドレイDragotoniu、私は本当にあなたの応答に感謝します。 しかし、2つのリストを使用するということは、2つの異なるクラスを持つことを意味し、さらに2つの別個のテーブルをデータベースに持つことを意味します。 これは、両方のセクションが類似のデータを共有するため、データ入力段階で冗長性を作成しますが、時間と人気の唯一の違いがあります。これは、日付が最近のものであれば、最近のセクションに行き、フィーチャがデータベーステーブルでyesに設定されている場合は、見出しと完全な説明のような残りのデータが両方のセクションで同じになるように、 。 – Ahmad
そして、私はこのロジックについて長い時間を費やしてきたので、LINQの部分に何かが足りないと思っています.LINQクエリを洗練して修正することができます。どう思いますか?お返事ありがとうございました。 – Ahmad
とにかく、私はあなたのロジックを使って問題を解決することができました。モデルディレクトリのクラスを使ってデータベース設計を少し変更し、ロジックを適用しました。再度ありがとう、私は本当にあなたの親切な協力に感謝します。 – Ahmad