В настоящее время у меня проблема с загрузчиком данных при асинхронном создании Microsoft.SqlServer.Management.Smo.Table. Примечание. Я получил свой SmoTable из TableView и IDisposable.
private async Task Generate()
{
await Task.Run(()=>
{
MSSMSDatabase db = CreateDB(txtDBname.Text);
List<string> tableNames = GetTableNameList();
for(string tableName in tableNames)
{
using(SmoTable tbl = new Table(db, tableName)) // <=== after a few loops, the error occurs within here.
{
foreach(var col in columnList)
{
tbl.AddColumns(col);
}
tbl.Create();
}
}
});
}
Microsoft.SqlServer.Management.Smo.FailedOperationException: InvalidOperationException: уже существует открытый DataReader, связанный с этим подключением, которое необходимо сначала закрыть.
Я попытался реализовать IDisposable в своем классе SmoTable, который я унаследовал от класса TableView, но по-прежнему имел ту же ошибку.
Заранее спасибо.