- Visual Studioエンティティデザイナでコンテキストメニューを開いて、「データベースモデルからモデルを更新」を実行し、実行したいストアドプロシジャを追加する。
- モデルブラウザから「EntityContainer->関数インポート」上でコンテキストメニューを開いて、「関数インポートの作成」実行する。
- 「関数インポートの追加」ウィンドウが表示されるので、ストアドプロシジャ名を選択し、関数インポート名、戻り値の型を設定する。
- 関数インポートが追加される。
- Entity Clientを利用して、インポートした関数を実行する。
using (EntityConnection conn =
new EntityConnection(“name=AdventureWorksEntities”))
{
conn.Open();
try
{
// Create an EntityCommand.
using (EntityCommand cmd = conn.CreateCommand())
{
cmd.CommandText = “AdventureWorksEntities.GetOrderDetails”;
cmd.CommandType = CommandType.StoredProcedure;
EntityParameter param = new EntityParameter();
param.Value = “43659″;
param.ParameterName = “SalesOrderHeaderId”;
cmd.Parameters.Add(param);// Execute the command.
using (EntityDataReader rdr =
cmd.ExecuteReader(CommandBehavior.SequentialAccess))
{
// Read the results returned by the stored procedure.
while (rdr.Read())
{
Console.WriteLine(“Header#: {0} “ +
“Order#: {1} ProductID: {2} Quantity: {3} Price: {4}”,
rdr[0], rdr[1], rdr[2], rdr[3], rdr[4]);
}
}
}
}
catch (EntityException ex)
{
Console.WriteLine(ex.ToString());
}
conn.Close();
}