Zon-cpp Ответов: 1

Значение переменных в режиме отладки


Привет,
мой проект-это проект clr (VC++). я хочу отлаживать и отслеживать свой код ( в режиме отладки)
но как только я позвоню
da->Fill(dS, L"tlbReferalPersonInfo");
тогда я не вижу ценности объектов.
например, в моем коде ниже (в режиме отладки) :
int otherVal = 10;
SqlCommand^ cmd = gcnew SqlCommand(sPersonInfoRecord, objConHIS1);
cmd->CommandType = System::Data::CommandType::StoredProcedure;
cmd->Parameters->AddWithValue(L"@IDADMITClinic", nAdmitClinic);
SqlDataAdapter^ da = gcnew SqlDataAdapter(cmd);
da->SelectCommand = cmd;
da->Fill(dS, L"tlbReferalPersonInfo");

objConHIS1->Open();

после вызова функции Fill() я не вижу значения "членов ds" или даже значения "otherVal"
как мне отладить свой код ?


почему??? пожалуйста, помогите мне отследить мой код.

Что я уже пробовал:

я не вижу значения переменных в режиме отладки, когда вызываю SqlDataAdapter.Функция Fill ()!!!!

1 Ответов

Рейтинг:
1

OriginalGriff

Fill - это "блокирующий вызов" - он не возвращается до тех пор, пока БД не соберет всю информацию и не вернет ее вашему приложению (или истечет тайм-аут SQL, в зависимости от того, что произойдет раньше).
Поэтому, если хранимая процедура занимает много времени, вы не можете сделать ничего другого в этом потоке - включая использование отладчика - до тех пор, пока он не будет завершен или не истечет время ожидания.

Я бы посоветовал вам начать с просмотра SP в SSMS и посмотреть, что он делает и сколько времени требуется для этого ...


Zon-cpp

- нет! это не сработало!!! функция Fill() возвращает, и я могу отлаживать следующие строки. Но я не могу прочитать значение переменных!