現在、「手動のクエリ作成」コードをNice SQLフレームワークに切り替えることを計画しているので、クエリを自分で作成する代わりに、クエリまたはsqlをフレームワークに残すことができます。
今、Entity Framework 4のテーブルから単一のレコードを取得する方法を疑問に思っていますか?
私は主にSELECT * FROM {0} WHERE Id = {1}
のようなSQLを使用しました。私が関係する限り、それはEF4では機能しません。
コンテキストから単一のIDベースのレコードを選択する方法はありますか?
何かのようなもの:
public Address GetAddress(int addressId)
{
var result = from Context.Addresses where Address.Id = addressId;
Address adr = result as Address;
return Address;
}
ありがとうございました!
var address = Context.Addresses.First(a => a.Id == addressId);
Single
またはFirst
メソッドを使用できます。
これらのメソッドの違いは、Singleは単一の行を予期し、単一の行がない場合は例外をスローすることです。
使用法は両方とも同じです
(VS 2015に基づく).edmxを作成する場合(追加-> ADO.NETエンティティデータモデル)。
手順に従って「.edmx」を作成し、次を使用してストアドプロシージャを実行します。 emailAddress
は、ストアドプロシージャに渡すパラメーターですg_getLoginStatus
。これにより、最初の行がLoginStatus
にプルされ、status
はデータベースの列になります。
bool verasity = false;
DBNameEntities db = new DBNameEntities(); // Use name of your DBEntities
var LoginStatus = db.g_getLoginStatus(emailAddress).FirstOrDefault();
if ((LoginStatus != null) && (LoginStatus.status == 1))
{
verasity = true;
}