У меня есть следующий фрагмент кода:
public TimestampedRowStorage GetTimestampedRowStorage(string startTime, string endTime, long trendSettingID, int? period)
{
var timestampedList = (from t in dataContext.TrendRecords
where t.TrendSetting_ID == trendSettingID
select t).ToList();
return new TimestampedRowStorage
{
TimestampedDictionary = timestampedList.ToDictionary(m => m.Timestamp,
m => (from j in dataContext.TrendSignalRecords
where j.TrendRecord_ID == m.ID
select j).ToDictionary(p => p.TrendSignalSetting.Name,
p => (double?)p.Value))
};
}
Но я всегда получаю следующее исключение:
Уже есть открытый DataReader связанные с этим подключением, которое сначала необходимо закрыть.
Вот трассировка стека:
[MySqlException (0x80004005): есть уже связанный открытый DataReader с этим подключением, которое должно быть закрытые первыми.]
MySql.Data.MySqlClient.MySqlCommand.CheckState () +237 MySql.Data.MySqlClient.MySqlCommand.ExecuteReader (CommandBehavior поведение) +146
MySql.Data.Entity.EFMySqlCommand.ExecuteDbDataReader (CommandBehavior поведение) +47
System.Data.Common.DbCommand.ExecuteReader (CommandBehavior поведение) +10
System.Data.EntityClient.EntityCommandDefinition.ExecuteStoreCommands (EntityCommand entityCommand, CommandBehavior поведение) +443[EntityCommandExecutionException: An произошла ошибка при выполнении определение команды. Увидеть внутреннее исключение для подробностей.]
System.Data.EntityClient.EntityCommandDefinition.ExecuteStoreCommands (EntityCommand entityCommand, CommandBehavior поведение) +479
System.Data.Objects.Internal.ObjectQueryExecutionPlan.Execute (ObjectContext контекст, ObjectParameterCollection parameterValues) +736
System.Data.Objects.ObjectQuery1.GetResults (Nullable
1 forMergeOption) +149
System.Data.Objects.ObjectQuery1.Execute (MergeOption mergeOption) +31
1.Загрузить (MergeOption mergeOption) +148
System.Data.Objects.DataClasses.EntityReference
System.Data.Objects.DataClasses.RelatedEnd.Load () +37 System.Data.Objects.DataClasses.RelatedEnd.DeferredLoad () +8032198 System.Data.Objects.DataClasses.EntityReference1.get_Value () +12 Nebula.Models.TrendSignalRecord.get_TrendSignalSetting () в C: \ Users \ Bruno Леонардо \ документы \ visual studio 2010 \ Projects \ Nebula \ Nebula \ Models \ SmgerDataModel.Designer.cs: 2528 Nebula.Models.Trends.TrendRepository.
1 источник, Funcb__b (TrendSignalRecord p) в C: \ Users \ Bruno Леонардо \ документы \ visual studio 2010 \ Projects \ Nebula \ Nebula \ Models \ Trends \ TrendRepository.cs: 229 System.Linq.Enumerable.ToDictionary (IEnumerable 2 keySelector, Func
2 elementSelector, IEqualityComparer1 компаратор) +226
1 источник, Func
System.Linq.Enumerable.ToDictionary (IEnumerable2 keySelector, Func
2 elementSelector) +54
Nebula.Models.Trends.TrendRepository.b__a (TrendRecord m) в C: \ Users \ Bruno Леонардо \ документы \ visual studio 2010 \ Projects \ Nebula \ Nebula \ Models \ Trends \ TrendRepository.cs: 227 System.Linq.Enumerable.ToDictionary (IEnumerable1 источник, Func
2 keySelector, Func2 elementSelector, IEqualityComparer
1 компаратор) +240
System.Linq.Enumerable.ToDictionary (IEnumerable1 источник, Func
2 keySelector, Func2 elementSelector) +53
1 период) в C: \ Users \ Bruno Леонардо \ документы \ visual studio 2010 \ Projects \ Nebula \ Nebula \ Models \ Trends \ TrendRepository.cs: 224 Nebula.Models.Trends.TrendRepository.GetTrendSettingContainer (String startTime, строка endTime, Int64 unitID, Int64 plantID, Int64 trendSettingID, GridSortOptions gridSortOptions, Nullable
Nebula.Models.Trends.TrendRepository.GetTimestampedRowStorage (String startTime, строка endTime, Int64 trendSettingID, Nullable1 страница, Nullable
1 recordsPerPage, Nullable1 период, Int64 [] тенденции, допускает значение NULL
1 allTrends) в C: \ Users \ Bruno Леонардо \ документы \ visual studio 2010 \ Projects \ Nebula \ Nebula \ Models \ Trends \ TrendRepository.cs: 206 Nebula.Controllers.GeneratingUnitController.TrendSettings (Int64 id, Int64 plantID, Int64 trendSettingID, String startTime, String endTime, допускающее значение NULL1 страница, Обнуляемый
1 recordsPerPage, Параметры GridSortOptions, допускающие значение NULL1 период, Int64 [] тенденции, допускает значение NULL
1 allTrends) в C: \ Users \ Bruno Леонардо \ документы \ visual studio 2010 \ Projects \ Nebula \ Nebula \ Controllers \ GeneratingUnitController.cs: 148 lambda_method (Закрытие, ControllerBase , Object []) +543
Ребята, вы можете мне помочь?