A veces aparece el error anterior durante la lectura. La excepción se origina de ASP.NET SqlDataReader cada vez que intenta leer datos antes de llamar al método Read(). Dado que EF hace todo esto internamente, me pregunto qué más puede causar este error. podría ser la conectividad de red (o) db?'Intento no válido de leer cuando no hay datos' - la excepción ocurre "a veces" en Entity Framework
gracias
adicional Bounty Información (GenericTypeTea):
Tengo el mismo error después de actualizar el Código de EF Primera RC (4.1):
"no válida intento de leer cuando no hay datos presente "
Este es el código en cuestión:
using (var context = GetContext())
{
var query = from item in context.Preferences
where item.UserName == userName
where item.PrefName == "TreeState"
select item;
// Error on this line
Preference entity = query.FirstOrDefault();
return entity == null ? null : entity.Value;
}
La estructura de la tabla es la siguiente:
Preference
{
Username [varchar(50)]
PrefName [varchar(50)]
Value [varchar(max)] Nullable
}
La tabla es independiente y no tiene relaciones. Este es el código de DbModelBuilder:
private void ConfigurePreference(DbModelBuilder builder)
{
builder.Entity<Preference>().HasKey(x => new { x.UserName, x.PrefName });
builder.Entity<Preference>().ToTable("RP_Preference");
}
Exactamente el mismo código funciona perfectamente en CTP5. Supongo que esto es un error de RC, pero cualquier idea de cómo solucionarlo sería apreciada.
@Carnotaurus - Porque le interesa la cadena "Value". – anon
Porque "entidad de devolución" no es lo mismo que "entidad de retorno.valor" ... –
@Ladislav - No hay necesidad de insultos. Mi razonamiento era que (al igual que los CTP), sería valioso tener etiquetas para cada versión antes del lanzamiento final, en caso de que haya correcciones de errores o cambios en la API. Pero voy a ceder a su sabiduría como un miembro honrado de SO. – anon