Отладка кода

Оценить
(0 голоса)
DataTips (всплывающие подсказки данных) позволяют вам выделить переменную или вы­ражение в вашем редакторе кода и получить информацию наблюдения прямо в редакторе. Эта функция хорошо соответствует методу работы разработчика. Например, если вы смот­рите на строку кода, то можете выделить что-то в этой строке для вычисления. Вы могли бы сделать это и при помощи создания QuickWatch. Однако вы можете также просто навести курсор на некий элемент, и его данные развернутся в DataTip. На рис. 10.35 показан пример. Здесь курсор расположен над переменной, которая имеет тип Customer. Щелчок по знаку "плюс" для разворачивания этой переменной разворачивает множество членов этого объекта.   Вы можете…
Оценить
(1 голос)
Когда вы смотрите на значения переменных, то на самом деле вы хотите добраться до дан­ных объекта. Иногда эти данные заслоняются самой объектной моделью. Предположим, что вы ищете данные, содержащиеся в объекте DataSet. Для того чтобы их найти, вам придется глубоко закопаться в окно наблюдения или список DataTip. Вам придется изучить внутрен­ности объектной модели для того, чтобы добраться до базовых данных, содержащихся в объекте. Если вы когда-нибудь тратили на это много времени, то знаете, как это раздражает. Visual Studio предлагает быстрый и простой способ доступа к данным внутри объекта. Она делает это при помощи инструмента под названием визуализатор. Визуализаторы предназначены для…
Оценить
(0 голоса)
Функция Edit and Continue позволяет вам изменять код во время отладки без прекращения вашего сеанса отладки. Вы можете модифицировать строку кода или даже исправить ошиб­ку и продолжать работать. Разработчики на Visual Basic, которые работали на версиях еще до .NET, должны помнить этот мощный инструмент. Его отсутствие в .NET сделало его са­мой ожидаемой функцией. Хорошая новость состоит в том, что Edit and Continue была до­бавлена в версии 2005 года как в Visual Basic, так и в С#. В версии 2008 эта функция была также добавлена и в Visual C++. Вызвать Edit and Continue несложно. Вы просто делаете изменение в коде во…
Оценить
(1 голос)
Удаленная отладка позволяет вам подключиться к выполняющемуся приложению на другом компьютере и отладить это приложение в его среде выполнения. Это часто единственный способ получить те ошибки, которые возникают только на определенном аппаратном обес­печении. Все мы слышали крики разработчиков: "А на моем компьютере работает!" Уда­ленная отладка помогает этим разработчикам определить, почему же их приложение не ра­ботает в другой среде. Удаленная отладка очень ценна в самых различных случаях, в том числе при отладке: хра­нимых на сервере SQL-процедур, Web-сервисов, Web-приложений, удаленных сервисов или процессов и т. д. Самое трудное в удаленной отладке — это ее настройка. Сам процесс отладки не отличается от того,…
Оценить
(0 голоса)
Web-сервис (или сервис Windows Communication Foundation) вы обычно отлаживаете при помощи тех же самых инструментов и методов, которые мы описывали до настоящего мо­мента. Основная проблема при отладке сервисов — это прикрепление к ним. Для этого есть два основных варианта. Первый вариант — войти в сервис непосредственно из кода, кото­рый вы отлаживаете (из клиента, который вызывает сервис). Второй вариант— прикре­питься к сервису, который уже был вызван клиентом. Рассмотрим эти варианты.
Оценить
(0 голоса)
Вы можете войти непосредственно в сервис WCF (при условии, что ваш вызывающий код (или клиент) имеет двусторонний контракт с сервисом). Это называется дуплексным кон­трактом (duplex contract). Такой контракт позволяет клиенту и сервису обмениваться друг с другом. Вызовы может инициировать каждый из них. Это полезно тогда, когда вашему сер­веру нужно сделать обратный вызов клиента или породить события на клиенте. Для на­стройки этого вы используете ServiceContractAttribute (подробности см. в главе 19). Для того чтобы это работало, ваш клиент должен быть синхронным. То есть клиент не мо­жет сделать асинхронный вызов сервиса WCF и продолжить заниматься другими задачами. Он должен сделать вызов и ждать…
Оценить
(0 голоса)
Вы можете использовать опцию Attach to Process (будет описана позже) для отладки как сервисов WCF, так и Web:cepBHCOB (asmx). В этих случаях сервис уже обычно работает в процессе, который находится вне вашей отладочной среды. Для прикрепления к такому процессу и его отладки вы должны убедиться в том, что у вас есть код этого сервиса (загру­женный в Visual Studio). Кроме того, процесс сервиса должен работать на сервере IIS или ASP.NET Development Server. И наконец, сервис должен быть вызван WCF-клиентом (для того, чтобы можно было получить доступ к его выполнению).
Оценить
(0 голоса)
Многопоточное приложение — это такое приложение, у которого в неком процессе работа­ет больше одного потока. По умолчанию каждый процесс вашего приложения имеет, по крайней мере, один поток исполнения. Вы можете создавать несколько потоков для выпол­нения параллельной обработки. Это может существенно повысить производительность, осо­бенно на современных многоядерных процессорах и при использовании технологии гипер­поточности. Однако многопоточность дается не просто так. Такой код сложнее писать и сложнее отлаживать. Если вы когда-либо писали многопоточное приложение, то вы уже знаете об этом. К счастью, Visual Studio предоставляет несколько инструментов, которые немного облегча­ют эту работу. Мы не будем здесь описывать программирование многопоточного приложе­ния; вместо этого мы…
Оценить
(0 голоса)
Visual Studio позволяет вам визуализировать потоки вашего приложения в режиме отладки. Когда вы останавливаетесь на точке останова, то ваше приложение приостановлено, и вы отлаживаете активный поток. В это время прочие потоки вашего приложения никуда не ис­чезают. Однако они могут быть не видны. Для того чтобы увидеть их в меню отладки, вы можете использовать в меню (или на панели инструментов) Debug опцию Show Threads in Source (рис. 10.37). Рис. 10.37. Опция Show Threads in Source Использование этой опции приведет к выделению других потоков (которые существуют в вашем коде). Эти строки кода будут выделены в поле индикаторов окна кода (во время се­анса…
Оценить
(0 голоса)
Вы можете переключаться между отлаживаемыми процессами и потоками этих процессов при помощи панели инструментов Debug Location (рис. 10.41). Слева находится список процессов. Здесь вы можете выбрать процесс для просмотра его подробностей (в том числе и выполняющихся потоков). Однако многие многопоточные приложения выполняются в одном процессе. Список Thread в панели инструментов показывает потоки выбранного процесса. Этот спи­сок показан на рис. 10.41.   Обратите внимание, что потоки показаны вместе со своими иден­тификаторами, именами и флажками. Вы можете выбрать поток в этом списке для того, что­бы перейти к соответствующему коду. Если с выделенным потоком не связано никакого исходного кода, то имя такого потока…
© 2018 www.visualstudios.ru. Все права защищены.