1

我是实体框架的新手,不明白为什么 ExecuteReader 需要 CommandBehavior.SequentialAccess。下面是我的代码..

 using (var conn = new EntityConnection("name=EFRecipesEntities"))
    {
       Console.WriteLine("Customers...");
       var cmd = conn.CreateCommand();
       conn.Open();
       cmd.CommandText = @"select c.Name, C.Email from
       EFRecipesEntities.Customers as c";
       using (var reader = cmd.ExecuteReader(CommandBehavior.SequentialAccess))
       {
           while (reader.Read())
           {
              Console.WriteLine("{0}'s email is: {1}",
              reader.GetString(0), reader.GetString(1));
           }
       }
    }

任何帮助..

4

1 回答 1

1

根据微软来自http://blogs.msdn.com/b/alexj/archive/2007/11/15/commandbehavior-sequentialaccess.aspx?Redirected=true

在 EntityDataReader 中,有时一个 Cell(行和列的交集)实际上也包含另一个 Reader。缓存你过去读过的嵌套阅读器有点棘手。所以至少目前我们不支持非顺序访问。

于 2013-10-29T21:30:05.040 回答