1

Visual C# MVC プロジェクトに取り組んでいます。私のモデルではデータベースファーストのアプローチを使用しています。私のプロジェクトは、ユーザーがアプリを購入できるアプリマーケットの開発に関するものです。ホームページで部分ビューを使用しました。これにより、さまざまなアプリの詳細がさまざまな部分ビューに表示されます。最初の部分ビューの App1、2 番目の部分ビューの App2 などです。これには foreach ループを使用しました。

各部分ビューには、MoreInfo というリンクがあり、ユーザーがそれをクリックすると、MoreInfo ページ内に移動します。データベースには、アプリ情報、アプリのコスト、説明などのフィールドがあり、MoreInfo ページ内に表示されます。これらのフィールドはすべて、Apps テーブルと呼ばれる 1 つのテーブルにあります。

ここでの問題は、MoreInfo ページ内で forach ループを使用すると、データベースから各レコードの情報を取得することです。より明確にするために、データベースには、「説明 1」と「説明 2」という説明フィールドの 2 つのレコードがあります。foreach ループを使用すると、同じページに説明 1 用と説明 2 用の 2 つのビューが表示されます。私が欲しいのは、最初の MoreInfo ページの最初のアプリの説明と、2 番目の MoreInfo ビューの 2 番目の説明などです。
誰かがこれで私を助けることができますか? ありがとう..

4

3 に答える 3

1

Entity Framework を使用していると仮定すると、Enumerable.FirstOrDefault がこれを行います。これを TSource タイプにロードできます。

リンクは次のとおりです。 http://msdn.microsoft.com/en-us/library/bb340482.aspx

var someobj = db.someEnumerable.FirstOrDefault(x => // Condition);
于 2013-08-06T17:33:57.300 に答える
1

LINQ to SQL または EF を使用している場合はFirstOrDefault()、最初の値またはほとんどの場合 null (参照型の既定値) を返す呼び出しに追加できます。SQLConnection などを使用している場合や sproc を呼び出している場合はSELECT ... FROMSELECT TOP 1 .... FROM

于 2013-08-06T17:35:56.437 に答える
0

条件に応じて 1 つのレコードを取得するには、Linq を使用する必要があります。このようなことを試してください (これは、使用した変数がわからないため、ロジックを示すためのコードにすぎません)。

var result=(from x in dbContext.TableName where column==variable select x).FirstOrDefault()

それが役立つことを願っています。

于 2013-08-06T17:41:25.027 に答える