2016-08-05 18 views
2

現在、ASP.NET WebフォームをASP.NETコアに移行しています。私は特定のFindメソッドに小さな問題があります。私は.NETにはかなり新しいので、コードでより良く説明できることを願っています。ASP.NET CoreのDbSetインスタンスでFind(params object [] keyValues)メソッドを使用する方法?

var env = Request.Headers.GetValues("environment").First(); 
var db = new FormsContext(env); 
var request = db.InfoRequests.Find(Convert.ToInt32(id)); 

具体的にはFind(Convert.ToInt32(id))の代替品を探しています。メソッドの文字列として "id"が入るコードの一部。

具体的には、.NET CoreではSystem.Data.Entityを削除しました。私が今使っているDbSet方法は以下からであるしかし

System.Data.Entity.DbSet<InfoRequest>.Find(params object[] keyValues); 

(これはASP.NETからではなく、.NETのコアである):(この1つは、.NETのコアからである)

Microsoft.EntityFrameworkCore.DbSet<InfoRequest> 

が、このクラスには私が使用できるfindメソッドはありません。あるいは、私は構文を知らない。

最後に、「InfoRequest」クラスの作成方法から小さなスニペット:

public partial class FormsContext : DbContext 
{ 
    ... 
    public virtual DbSet<InfoRequest> InfoRequests { get; set; } 
    ... 
} 

私は十分な情報を提供することができました願っていますが、まもなく、私はのための.NETのコアでの交換を見つけようとしています"find"メソッド。あるいは、私が最初に他の人と共有していた3つの行を置き換えることができれば、これで十分です。ありがとう。

+0

ここでは何が問題なのかはまだ分かりません。 'Find'メソッドでどのような問題がありますか? – Rahul

+0

.NET Coreに存在しないか、見つけられません。私はその質問の中でいくつかの点をもっと明確にしようとします。 –

+0

この方法には、アルファベットのバージョン1.1を使用できます。あなたはドットネットのmygetウェブサイトでそれらを見つけて、あなたのVisual Studioにリンクすることができます。 –

答えて

3

AFAIKでは、FindメソッドはEF 1.0の一部ではありませんが、EF GitHub issueのようにEF 1.1の一部であるとマークされています。実装されたサンプル拡張メソッドを見つけることができますhere

+0

EF1.0の一部ではありませんか?ありがとう –

+0

はい、あなたは正しいです、私の答えを更新:) –

関連する問題