C# 2008 и платформа .NET 3.5 для профессионалов
Кристиан Нейгел, Билл Ивьен, Джей Глинн, Карли Уотсон, Морган Скиннер
Эта книга является совершенным руководством по языку C# 2008 и его среде. Она обновлена с учетом вышедших версий .NET 3.5 и Visual Studio 2008. Начиная с обзора и архитектуры и методологии .NET, авторы объясняют, почему язык C# не может рассматриваться в изоляции, а, наоборот - в тесном взаимодействии с .NET Framework. После того, как вы освоите фундаментальные основы C#, вы сможете перейти непосредственно к анализу многочисленных методик программирования на этом языке, знакомясь с удачно подобранными примерами в каждой главе. Новые примеры кода демонстрируют эффективные способы решения разнообразных реальных задач с помощью C#. Полностью новые главы, посвященные LINQ, SQL, ADO.NET, Windows Communication Foundation, Windows Workflow Foundation, Windows Presentation Foundation, массивам, системным транзакциям, трассировке и регистрации событий, предоставляют исчерпывающую информацию по всем необходимым аспектам C# 2008. В этой книге описаны:
- разработка приложений и служб Windows;
- использование ASP.NET 3.5 для создания Web-страниц;
- манипулирование XML в коде C#;
- применение ADO.NET для доступа к базам данных;
- генерация графических данных с помощью C# 2008;
- использование многочисленных дополнений C#.
Издательство: Диалектика, 2008 г.
ISBN 978-5-8459-1458-3
Количество страниц: 1392.
Содержание книги «C# 2008 и платформа .NET 3.5 для профессионалов»:
- 33 Об авторах
- 35 Благодарности
- 36 Введение
- 36 Значение .NET и C#
- 38 Преимущества .NET
- 39 Что нового в .NET Framework 3.5
- 39 Неявно типизированные переменные
- 39 Автоматически реализуемые свойства
- 40 Инициализаторы объектов и коллекций
- 40 Встроенная поддержка ASP.NET AJAX
- 40 Каркас языка интегрированных запросов .NET (LINQ)
- 41 Многоцелевые возможности Visual Studio
- 41 Поддержка новейших типов приложений
- 41 Для чего подходит C#
- 43 Что необходимо для написания и выполнения кода C#
- 44 Как организована эта книга
- 44 Часть I. Язык C#
- 44 Часть II. Visual Studio
- 44 Часть III. Библиотеки базовых классов
- 44 Часть IV. Данные
- 44 Часть V. Презентации
- 45 Часть VI. Коммуникации
- 45 Часть VII. Приложения
- 45 Соглашения
- 46 Исходный код и приложения
- 46 От издательства
- 36 Значение .NET и C#
- 47 Часть I. Язык C#
- 48 Глава 1. Архитектура .NET
- 48 Отношение между C# и .NET
- 49 Общеязыковая исполняющая среда
- 49 Независимость от платформы
- 50 Повышение производительности
- 50 Языковая способность к взаимодействию
- 52 Более внимательный взгляд на промежуточный язык (IL)
- 52 Поддержка объектной ориентации и интерфейсов
- 54 Различие типов значений и типов ссылок
- 54 Строгая типизация данных
- 61 Обработка ошибок с помощью исключений
- 62 Применение атрибутов
- 62 Сборки
- 63 Приватные сборки
- 64 Разделяемые сборки
- 64 Рефлексия
- 65 Классы .NET Framework
- 66 Пространства имен
- 66 Создание приложений .NET с использованием C#
- 66 Создание приложений ASP.NET
- 68 Элементы управления Web-сервера
- 69 Создание Windows-форм
- 69 Использование Windows Presentation Foundation (WPF)
- 70 Элементы управления Windows
- 70 Службы Windows
- 70 Windows Communication Foundation (WCF)
- 70 Роль языка C# в архитектуре .NET Enterprise
- 72 Резюме
- 74 Глава 2. Основы C#
- 74 Прежде чем начать
- 75 Ваша первая программа на C#
- 75 Код
- 75 Компиляция и запуск программы
- 76 Более пристальный взгляд
- 78 Переменные
- 79 Инициализация переменных
- 80 Выведение типа
- 81 Область видимости переменных
- 83 Константы
- 84 Предопределенные типы данных
- 84 Типы значений и ссылочные типы
- 86 Типы CTS
- 86 Предопределенные типы значений
- 90 Предопределенные ссылочные типы
- 92 Поток управления
- 92 Условные операторы
- 96 Циклы
- 99 Операторы перехода
- 100 Перечисления
- 102 Массивы
- 103 Пространства имен
- 104 Оператор using
- 105 Псевдонимы пространств имен
- 106 Метод Main()
- 106 Множественные методы Main()
- 107 Передача аргументов в Main()
- 107 Дополнительные сведения о компиляции файлов C#
- 109 Консольный ввод-вывод
- 111 Применение комментариев
- 111 Внутренние комментарии в исходных файлах
- 111 Документация XML
- 113 Директивы препроцессора C#
- 114 #define и #undef
- 114 #if, #elif, #else и #endif
- 115 #warning и #error
- 116 #region и #endregion
- 116 #line
- 116 #pragma
- 117 Рекомендации по программированию на C#
- 117 Правила для идентификаторов
- 118 Соглашения по использованию
- 123 Резюме
- 124 Глава 3. Объекты и типы
- 124 Классы и структуры
- 125 Члены класса
- 126 Данные-члены
- 126 Функции-члены
- 141 Анонимные типы
- 141 Структуры
- 143 Структуры — это типы значений
- 144 Структуры и наследование
- 144 Конструкторы структур
- 145 Частичные классы
- 146 Статические классы
- 146 Класс Object
- 147 Методы System.Object
- 148 Метод ToString()
- 149 Расширяющие методы
- 150 Резюме
- 151 Глава 4. Наследование
- 151 Типы наследования
- 151 Сравнение наследования реализации и наследования интерфейса
- 152 Множественное наследование
- 152 Структуры и классы
- 153 Наследование интерфейса
- 154 Виртуальные методы
- 155 Сокрытие методов
- 156 Вызов базовых версий функций
- 157 Абстрактные классы и функции
- 157 Закрытые классы и методы
- 158 Конструкторы производных классов
- 160 Добавление в иерархию конструктора
- 161 Добавление в иерархию конструкторов с параметрами
- 163 Модификаторы
- 163 Модификаторы видимости
- 164 Другие модификаторы
- 165 Интерфейсы
- 166 Определение и реализация интерфейсов
- 170 Производные интерфейсы
- 171 Резюме
- 151 Типы наследования
- 172 Глава 5. Массивы
- 172 Простые массивы
- 172 Объявление массива
- 172 Инициализация массива
- 173 Обращение к элементам массива
- 174 Использование ссылочных типов
- 175 Многомерные массивы
- 176 Зубчатые массивы
- 177 Класс Array
- 177 Свойства
- 178 Создание массивов
- 179 Копирование массивов
- 180 Сортировка
- 182 Интерфейсы Array и Collection
- 182 IEnumerable
- 182 ICollection
- 183 IList
- 184 Перечисления
- 184 Интерфейс IEnumerator
- 184 Оператор foreach
- 185 Оператор yield
- 189 Резюме
- 172 Простые массивы
- 190 Глава 6. Операции и приведения
- 190 Операции
- 192 Сокращения операций
- 193 Условная операция
- 194 Операции checked и unchecked
- 194 Операция is
- 195 Операция as
- 195 Операция sizeof
- 195 Операция typeof
- 195 Типы и операции, принимающие значение null
- 196 Операция поглощения null
- 196 Приоритеты операций
- 197 Безопасность типов
- 197 Преобразования типов
- 198 Неявные преобразования
- 199 Явные преобразования
- 201 Упаковка и распаковка
- 202 Проверка равенства объектов
- 202 Сравнение ссылочных типов на эквивалентность
- 204 Проверка типов значений на равенство
- 204 Перегрузка операций
- 206 Как работают операции
- 207 Пример перегрузки операции: структура Vector
- 213 Какие операции можно перегружать?
- 214 Пользовательские приведения
- 215 Реализация пользовательских приведений
- 222 Множественные приведения
- 225 Резюме
- 190 Операции
- 226 Глава 7. Делегаты и события
- 226 Делегаты
- 227 Объявление делегатов в C#
- 229 Использование делегатов в C#
- 231 Пример простого делегата
- 233 Пример BubbleSorter
- 235 Групповые делегаты
- 238 Анонимные методы
- 240 Лямбда-выражения
- 241 Ковариантность и контра-вариантность
- 243 События
- 243 Представление события с точки зрения получателя
- 246 Определение событий
- 250 Резюме
- 226 Делегаты
- 251 Глава 8. Строки и регулярные выражения
- 252 System.String
- 253 Построение строк
- 256 Члены класса StringBuilder
- 257 Форматирующие строки
- 263 Регулярные выражения
- 263 Введение в регулярные выражения
- 265 Пример RegularExpressionsPlayaround
- 267 Отображение результатов
- 269 Соответствия, группы и захваты
- 271 Резюме
- 252 System.String
- 272 Глава 9. Обобщения
- 272 Обзор
- 273 Производительность
- 274 Безопасность типов
- 274 Повторное использование двоичного кода
- 275 «Разбухание» кода
- 275 Рекомендации по именованию
- 275 Создание обобщенных классов
- 279 Средства обобщенных классов
- 280 Значения по умолчанию
- 280 Ограничения
- 282 Наследование
- 283 Статические члены
- 283 Обобщенные интерфейсы
- 284 Обобщенные методы
- 286 Обобщенные делегаты
- 286 Реализация методов, вызываемых делегатами
- 287 Использование обобщенных делегатов c классами Array
- 290 Другие обобщенные каркасные типы
- 290 Nullable<T>
- 292 EventHandler<TEventArgs>
- 292 ArraySegment<T>
- 293 Резюме
- 272 Обзор
- 294 Глава 10. Коллекции
- 294 Типы и интерфейсы коллекций
- 297 Списки
- 299 Создание списков
- 300 Инициализаторы коллекций
- 300 Добавление элементов
- 301 Вставка элементов
- 301 Доступ к элементам
- 302 Удаление элементов
- 303 Поиск
- 305 Сортировка
- 307 Преобразование типов
- 307 Коллекции, доступные только для чтения
- 307 Очереди
- 311 Стеки
- 313 Связные списки
- 319 Сортированные списки
- 321 Словари
- 322 Тип ключа
- 323 Пример словаря
- 326 Списки поиска
- 327 Другие классы словарей
- 329 Хеш-наборы
- 331 Битовые массивы
- 332 BitArray
- 334 BitVector32
- 336 Производительность
- 338 Резюме
- 339 Глава 11. Язык интегрированных запросов
- 339 Обзор LINQ
- 340 Запрос, использующий List<T>
- 345 Расширяющие методы
- 347 Лямбда-выражения
- 348 Запрос LINQ
- 349 Отложенное выполнение запроса
- 350 Стандартные операции запросов
- 352 Фильтрация
- 353 Фильтрация с индексом
- 353 Фильтрация типа
- 353 Составная конструкция from
- 355 Сортировка
- 356 Группировка
- 357 Группировка с вложенными объектами
- 358 Соединение
- 359 Операции над множествами
- 360 Разбиение
- 361 Агрегатные операции
- 362 Преобразование
- 364 Генерирующие операции
- 364 Деревья выражений
- 367 Поставщики LINQ
- 368 Резюме
- 339 Обзор LINQ
- 369 Глава 12. Управление памятью и указатели
- 369 За кулисами управления памятью
- 370 Типы значений
- 372 Ссылочные типы
- 374 Сборка мусора
- 375 Освобождение неуправляемых ресурсов
- 375 Деструкторы
- 376 Интерфейс IDisposable
- 378 Реализация интерфейса IDisposable и деструктора
- 379 Небезопасный код
- 379 Прямой доступ к памяти через указатели
- 388 Пример использования указателей: PointerPlayaround
- 392 Использование указателей для оптимизации производительности
- 396 Резюме
- 369 За кулисами управления памятью
- 397 Глава 13. Рефлексия
- 398 Пользовательские атрибуты
- 398 Написание пользовательских атрибутов
- 402 Пример пользовательского атрибута: WhatsNewAttributes
- 405 Рефлексия
- 405 Класс System.Type
- 407 Пример TypeView
- 410 Класс Assembly
- 411 Завершение примера WhatsNewAttributes
- 414 Резюме
- 398 Пользовательские атрибуты
- 415 Глава 14. Ошибки и исключения
- 416 Классы исключений
- 417 Перехват исключений
- 420 Реализация множественных блоков catch
- 424 Перехват исключений от другого кода
- 424 Свойства System.Exception
- 425 Что происходит с необработанными исключениями?
- 426 Вложенные блоки try
- 428 Определяемые пользователем классы исключений
- 429 Перехват пользовательских исключений
- 431 Возбуждение пользовательских исключений
- 434 Определение пользовательских классов исключений
- 436 Резюме
- 437 Часть II. Visual Studio
- 438 Глава 15. Visual Studio 2008
- 438 Работа с Visual Studio 2008
- 443 Создание проекта
- 450 Решения и проекты
- 453 Программный код приложений Windows
- 453 Считывание проектов Visual Studio 6
- 454 Исследование проекта и заполнение его кодом
- 464 Компоновка проекта
- 470 Отладка
- 473 Рефакторизация
- 475 Поддержка множества целей
- 477 WPF, WCF, WF и другие технологии
- 477 Создание в Visual Studio приложений WPF
- 479 Создание в Visual Studio приложений WF
- 479 Резюме
- 438 Работа с Visual Studio 2008
- 481 Глава 16. Развертывание
- 481 Проектирование развертывания
- 482 Опции развертывания
- 482 Утилита xcopy
- 482 Инструмент Copy Web
- 482 Публикация Web-сайтов
- 482 Проекты развертывания
- 482 ClickOnce
- 483 Требования развертывания
- 484 Развертывание исполняющей среды .NET
- 484 Простое развертывание
- 485 xcopy
- 485 xcopy и Web-приложения
- 486 Инструмент Copy Web
- 486 Публикация Web-сайтов
- 486 Проекты для инсталляторов
- 487 Что такое Windows Installer?
- 488 Создание инсталляторов
- 498 ClickOnce
- 498 Операция ClickOnce
- 499 Публикация приложений
- 499 Настройка ClickOnce
- 500 Кэш приложений
- 500 Безопасность
- 501 Расширенные опции
- 507 Резюме
- 509 Часть III. Библиотеки базовых классов
- 510 Глава 17. Сборки
- 510 Общая информация о сборках
- 511 Свойства сборок
- 512 Структура сборки
- 513 Манифест сборки
- 514 Пространства имен, сборки и компоненты
- 514 Приватные и разделяемые сборки
- 514 Подчиненные сборки
- 515 Просмотр содержимого сборок
- 515 Создание сборок
- 517 Атрибуты сборок
- 520 Динамическая загрузка и создание сборок
- 523 Домены приложений
- 527 Разделяемые сборки
- 527 Строгие имена
- 528 Обеспечение целостности информации за счет использования строгих имен
- 529 Глобальный кэш сборок
- 531 Создание разделяемой сборки
- 532 Создание строгого имени
- 532 Установка разделяемой сборки
- 533 Использование разделяемой сборки
- 535 Отстроченное подписание сборок
- 536 Ссылки
- 536 Генератор образов в собственных кодах
- 538 Конфигурирование приложений .NET
- 538 Категории конфигурационных параметров
- 540 Конфигурирование каталогов для поиска сборок
- 542 Контроль версий
- 543 Номера версий
- 543 Получение номера версии программным путем
- 544 Конфигурационные файлы приложений
- 547 Файлы политик издателя
- 549 Версия среды времени выполнения
- 551 Резюме
- 510 Общая информация о сборках
- 552 Глава 18. Трассировка и события
- 552 Трассировка
- 553 Источники трассировки
- 555 Переключатели трассировки
- 556 Слушатели трассировки
- 558 Фильтры
- 559 Утверждения
- 560 Протоколирование событий
- 561 Архитектура протоколирования событий
- 562 Классы протоколирования событий
- 563 Создание источника событий
- 565 Запись журналов событий
- 565 Файлы ресурсов
- 568 Слушатель журнала событий
- 569 Мониторинг производительности
- 570 Классы мониторинга производительности
- 570 Построитель счетчиков производительности
- 571 Добавление компонентов PerformanceCounter
- 573 perfmon.exe
- 573 Резюме
- 552 Трассировка
- 575 Глава 19. Многопоточность и синхронизация
- 576 Обзор
- 577 Асинхронные делегаты
- 578 Опрос
- 578 Дескриптор ожидания
- 579 Асинхронный обратный вызов
- 581 Класс Thread
- 583 Передача данных потокам
- 584 Фоновые потоки
- 585 Приоритеты потоков
- 585 Управление потоками
- 586 Пулы потоков
- 588 Последствия многопоточности
- 588 Состязания за ресурсы
- 591 Взаимоблокировка
- 592 Синхронизация
- 593 Оператор lock и безопасность потоков
- 598 Класс Interlocked
- 599 Класс Monitor
- 600 Класс WaitHandle
- 601 Класс Mutex
- 602 Семафор
- 604 События
- 607 Класс ReaderWriterLockSlim
- 610 Таймеры
- 612 Апартаменты COM
- 613 Асинхронный шаблон на базе событий
- 614 Класс BackgroundWorker
- 617 Включение функции отмены
- 618 Включение функции отчета о ходе выполнения
- 619 Создание асинхронного компонента на базе событий
- 623 Резюме
- 625 Глава 20. Безопасность
- 625 Аутентификация и авторизация
- 626 Идентификационные данные и принципалы
- 627 Роли
- 628 Декларативные средства обеспечения безопасности на основании ролей
- 629 Службы клиентских приложений
- 634 Шифрование
- 637 Подпись
- 639 Обмен ключами и безопасная передача данных
- 642 Контроль доступа к ресурсам
- 645 Безопасность доступа кода
- 647 Полномочия
- 655 Отклонение полномочий
- 656 Утверждение полномочий
- 658 Группы кода
- 665 Полномочия доступа кода и наборы полномочий
- 668 Уровни политики безопасности: уровень компьютера, уровень пользователя и уровень предприятия
- 670 Управление политиками безопасности
- 673 Управление группами кода и полномочиями
- 674 Включение и отключение средств защиты
- 674 Создание группы кода
- 675 Удаление группы кода
- 675 Изменение полномочий группы кода
- 677 Создание и применение наборов полномочий
- 678 Распространение кода с использованием строгих имен
- 680 Распространение кода с использованием сертификатов
- 685 Резюме
- 625 Аутентификация и авторизация
- 686 Глава 21. Локализация
- 686 Пространство имен System.Globalization
- 687 Использование Unicode
- 688 Культуры и регионы
- 692 Культуры в действии
- 696 Сортировка
- 698 Ресурсы
- 698 Создание ресурсных файлов
- 698 Генератор ресурсных файлов
- 699 ResourceWriter
- 700 Использование ресурсных файлов
- 704 Пространство имен System.Resources
- 705 Локализация Windows Forms с применением Visual Studio
- 709 Программное переключение культуры
- 711 Использование настраиваемых ресурсов сообщений
- 711 Автоматическое восстановление ресурсов
- 712 Удаленные переводы
- 713 Локализация приложений ASP.NET
- 715 Локализация приложений WPF
- 715 Приложение WPF
- 716 Ресурсы .NET
- 717 Локализация с применением XAML
- 719 Специализированное средство чтения ресурсов
- 720 Создание DatabaseResourceReader
- 721 Создание DatabaseResourceSet
- 722 Создание DatabaseResourceManager
- 722 Клиентское приложение для DatabaseResourceReader
- 723 Создание пользовательской культуры
- 724 Резюме
- 686 Пространство имен System.Globalization
- 725 Глава 22. Транзакции
- 725 Обзор
- 726 Фазы транзакции
- 727 Свойства ACID
- 727 Базы данных и сущностные классы
- 729 Традиционные транзакции
- 729 Транзакции ADO.NET
- 730 System.EnterpriseServices
- 731 System.Transactions
- 733 Фиксируемые транзакции
- 735 Распространение транзакции
- 737 Зависимые транзакции
- 739 Включающие транзакции
- 740 Вложенные области действия включающих транзакций
- 742 Многопоточность с включающей транзакцией
- 745 Уровень изоляции
- 747 Специализированные диспетчеры ресурсов
- 748 Транзакционные ресурсы
- 753 Транзакции в Windows Vista и Windows Server 2008
- 756 Резюме
- 725 Обзор
- 757 Глава 23. Службы Windows
- 757 Что такое служба Windows?
- 758 Архитектура служб Windows
- 759 Программа службы
- 760 Программа управления службой
- 761 Программа конфигурирования службы
- 761 Пространство имен System.ServiceProcess
- 761 Создание службы Windows
- 762 Библиотека классов, использующая сокеты
- 765 Пример TcpClient
- 767 Проект службы Window
- 771 Службы и многопоточность
- 771 Инсталляция службы
- 772 Программа инсталляции
- 772 Класс Installer
- 773 Классы ServiceProcessInstaller и ServiceInstaller
- 775 Класс ServiceInstallerDialog
- 776 Мониторинг и управление службой
- 777 Управление компьютером с помощью консоли MMC
- 778 net.exe
- 778 sc.exe
- 778 Visual Studio Server Explorer
- 778 Класс ServiceController
- 780 Мониторинг службы
- 786 Поиск и устранение неисправностей
- 787 Интерактивные службы
- 788 Протоколирование событий
- 788 События, связанные с электропитанием
- 789 Резюме
- 790 Глава 24. Взаимодействие
- 791 .NET и COM
- 791 Метаданные
- 792 Освобождение памяти
- 792 Интерфейсы
- 793 Связывание методов
- 794 Типы данных
- 794 Регистрация
- 794 Многопоточность
- 796 Обработка ошибок
- 796 Обработка событий
- 797 Маршализация
- 798 Использование COM-компонента клиентом .NET
- 798 Создание компонента COM
- 803 Создание вызываемой оболочки времени выполнения
- 804 Использование класса RCW
- 806 Последствия многопоточности
- 806 Добавление точек подключения
- 809 Применение элементов управления ActiveX в Windows Forms
- 811 Использование COM-объектов в ASP.NET
- 812 Использование компонента .NET в COM-клиенте
- 812 Вызываемые оболочки COM
- 813 Создание компонента .NET
- 814 Создание библиотеки типов
- 816 Атрибуты COM с возможностью взаимодействия
- 819 Регистрация COM
- 819 Создание клиента COM
- 821 Добавление точек подключения
- 822 Создание клиента с объектом-приемником
- 824 Запуск элементов управления Windows Forms в Internet Explorer
- 824 Вызов платформы
- 829 Резюме
- 791 .NET и COM
- 831 Часть IV. Данные
- 832 Глава 25. Манипулирование файлами и реестром
- 832 Управление файловой системой
- 833 Классы .NET, представляющие файлы и папки
- 836 Класс Path
- 837 Пример: браузер файлов
- 841 Перемещение, копирование и удаление файлов
- 842 Пример: FilePropertiesAndMovement
- 843 Обзор кода FilePropertiesAndMovement
- 845 Чтение и запись файлов
- 846 Чтение файла
- 847 Запись файлов
- 849 Потоки
- 851 Буферизованные потоки
- 851 Чтение и запись бинарных файлов с применением FileStream
- 856 Чтение и запись текстовых файлов
- 862 Чтение информации об устройствах
- 864 Безопасность файлов
- 865 Чтение ACL файла
- 866 Чтение ACL каталога
- 867 Добавление и удаление ACL файла
- 868 Чтение и запись в реестр
- 869 Реестр
- 871 Классы реестра .NET
- 874 Пример: SelfPlacingWindow
- 880 Чтение и запись в изолированное хранилище
- 885 Резюме
- 832 Управление файловой системой
- 886 Глава 26. Доступ к данным
- 887 Обзор технологии ADO.NET
- 887 Пространства имен
- 887 Совместно используемые классы
- 889 Классы, специфические для баз данных
- 890 Использование соединений с базами данных
- 892 Управление строками соединений
- 893 Эффективное использование соединений
- 894 Вариант два: использование оператора блока
- 896 Транзакции
- 897 Команды
- 898 Выполнение команд
- 902 Вызов хранимых процедур
- 905 Быстрый доступ к данным: объект чтения данных
- 908 Управление данными и отношениями: класс DataSet
- 908 Таблицы данных
- 910 Столбцы данных
- 911 Строки данных
- 915 Отношения между данными
- 917 Ограничения, накладываемые на данные
- 920 Схемы XML: генерирование кода с помощью файла XSD
- 926 Заполнение данными объекта DataSet
- 926 Заполнение данными объекта DataSet с помощью адаптера данных
- 927 Заполнение класса DataSet данными из XML
- 928 Фиксация изменений в DataSet
- 928 Обновление с помощью адаптеров данных
- 931 Запись XML-вывода
- 932 Работа с ADO.NET
- 932 Многозвенные разработки
- 933 Генерация ключей в SQL Server
- 936 Соглашения по именованию
- 937 Резюме
- 887 Обзор технологии ADO.NET
- 939 Глава 27. LINQ to SQL
- 941 LINQ to SQL и Visual Studio 2008
- 941 Обращение к таблице Products с помощью LINQ to SQL — создание консольного приложения
- 942 Добавление класса LINQ to SQL
- 942 Введение в O/R Designer
- 943 Создание объекта Product
- 945 Как объекты базы данных отображаются на объекты LINQ to SQL
- 946 Объект DataContext
- 948 Объект Table<TEntity>
- 950 Работа без O/R Designer
- 950 Создание вашего собственного специального объекта
- 951 Выполнение запросов с вашим специальным классом и LINQ
- 952 Ограничение столбцов, вызванных запросом
- 953 Работа с именами столбцов
- 953 Создание вашего собственного объекта DataContext
- 954 Специальные объекты и O/R Designer
- 956 Запрос к базе данных
- 956 Использование выражений запросов
- 957 Выражения запроса в деталях
- 957 Фильтрация с использованием выражений
- 958 Выполнение соединений
- 960 Группирование элементов
- 961 Хранимые процедуры
- 962 Резюме
- 941 LINQ to SQL и Visual Studio 2008
- 963 Глава 28. Работа с XML
- 964 Поддержка стандартов XML в .NET
- 964 Введение в пространство имен System.Xml
- 965 Использование классов System.Xml
- 966 Чтение и запись потоков данных XML
- 966 Использование класса XmlReader
- 970 Проверка достоверности с помощью XmlReader
- 972 Использование класса XmlWriter
- 974 Использование DOM в .NET
- 975 Использование класса XmlDocument
- 979 Использование навигаторов XPathNavigator
- 980 Пространство имен System.Xml.XPath
- 985 Пространство имен System.Xml.Xsl
- 991 XML и ADO.NET
- 991 Преобразование данных ADO.NET в XML
- 996 Преобразование данных XML в формат ADO.NET
- 998 Сериализация объектов в XML
- 1005 Сериализация без доступа к исходному коду
- 1008 Резюме
- 1009 Глава 29. LINQ to XML
- 1010 LINQ to XML и .NET 3.5
- 1010 Новые объекты для создания документов XML
- 1010 Новый путь развития Visual Basic 2008
- 1010 Пространства имен и префиксы
- 1011 Новые объекты XML из .NET Framework 3.5
- 1011 XDocument
- 1011 XElement
- 1012 XNamespace
- 1014 XComment
- 1015 XAttribute
- 1016 Использование LINQ для запроса документов XML
- 1016 Запрос статических документов XML
- 1017 Запрос динамических документов XML
- 1018 Работа с документом XML
- 1019 Чтение из документа XML
- 1020 Запись XML-документа
- 1021 Использование LINQ to SQL вместе с LINQ to XML
- 1021 Настройка компонентов LINQ to SQL
- 1022 Запрос базы данных и вывод XML
- 1023 Резюме
- 1010 LINQ to XML и .NET 3.5
- 1024 Глава 30. Программирование в .NET с использованием SQL Server
- 1025 Хост для исполняющей среды .NET
- 1026 Пространство имен Microsoft.SqlServer.Server
- 1027 Типы, определяемые пользователем
- 1028 Создание типов UDT
- 1033 Использование типов UDT
- 1033 Использование типов UDT в коде клиентской стороны
- 1034 Агрегаты, определяемые пользователями
- 1035 Создание агрегатов, определяемых пользователем
- 1036 Использование агрегатов, определяемых пользователем
- 1037 Хранимые процедуры
- 1037 Создание хранимых процедур
- 1038 Использование хранимых процедур
- 1039 Функции, определяемые пользователем
- 1039 Создание функций, определяемых пользователем
- 1040 Использование функций, определяемых пользователем
- 1040 Триггеры
- 1041 Создание триггеров
- 1042 Использование триггеров
- 1042 Тип данных XML
- 1043 Таблицы с данными XML
- 1044 Считывание значений XML
- 1047 Запрос данных
- 1049 Язык модификации данных XML (XML DML)
- 1050 Индексы XML
- 1050 XML со строгим контролем типов
- 1052 Резюме
- 1053 Часть V. Презентации
- 1054 Глава 31. Windows Forms (на компакт-диске)
- 1055 Создание приложения Windows Forms
- 1060 Иерархия классов
- 1060 Класс Control
- 1061 Размер и местоположение
- 1062 Внешний вид
- 1062 Взаимодействие с пользователем
- 1063 Функциональность Windows
- 1064 Прочая функциональность
- 1064 Стандартные элементы управления и компоненты
- 1064 Button
- 1066 CheckBox
- 1066 RadioButton
- 1067 ComboBox, ListBox и CheckedListBox
- 1069 DateTimePicker
- 1070 ErrorProvider
- 1071 HelpProvider
- 1071 ImageList
- 1071 Label
- 1072 ListView
- 1074 PictureBox
- 1074 ProgressBar
- 1075 TextBox, RichTextBox и MaskedTextBox
- 1076 Panel
- 1077 FlowLayoutPanel и TableLayoutPanel
- 1078 SplitContainer
- 1078 TabControl и TabPages
- 1078 ToolStrip
- 1081 MenuStrip
- 1082 ContextMenuStrip
- 1082 ToolStripMenuItem
- 1082 ToolStripManager
- 1083 ToolStripContainer
- 1083 Формы
- 1083 Класс Form
- 1088 Многодокументный интерфейс (MDI)
- 1089 Заказные элементы управления
- 1100 Резюме
- 1055 Создание приложения Windows Forms
- 1101 Глава 32. Привязка данных (на компакт-диске)
- 1101 Элемент управления DataGridView
- 1102 Отображение табличных данных
- 1103 Источники данных
- 1111 Иерархия классов DataGridView
- 1114 Привязка данных
- 1114 Простая привязка
- 1115 Объекты привязки данных
- 1115 BindingContext
- 1118 Visual Studio .NET и доступ к данным
- 1118 Создание соединения
- 1122 Извлечение данных
- 1122 Обновление источника данных
- 1122 Другие общие требования
- 1129 Резюме
- 1101 Элемент управления DataGridView
- 1130 Глава 33. Вывод графики с помощью GDI+ (на компакт-диске)
- 1131 Основные принципы рисования
- 1131 GDI и GDI+
- 1133 Рисование контуров
- 1136 Рисование контуров с использованием OnPaint()
- 1138 Использование области отсечения
- 1139 Измерение координат и областей
- 1140 Point и PointF
- 1141 Size и SizeF
- 1142 Rectangle и RectangleF
- 1143 Region
- 1144 Замечания по поводу отладки
- 1145 Рисование прокручиваемых окон
- 1150 Мировые координаты, страничные координаты и координаты устройства
- 1151 Цвета
- 1151 Значения Red-Green-Blue (RGB)
- 1152 Именованные цвета
- 1152 Режимы отображения Graphics и безопасная палитра
- 1153 Безопасная палитра
- 1153 Перья и кисти
- 1154 Кисти
- 1155 Перья
- 1155 Рисование фигур и линий
- 1157 Вывод графических изображений
- 1160 Вопросы манипулирования изображениями
- 1160 Рисование текста
- 1161 Простой пример отображения текста
- 1162 Шрифты и их семейства
- 1164 Пример: перечисление семейств шрифтов
- 1166 Редактирование текстового документа: пример CapsEditor
- 1170 Invalidate()
- 1171 Вычисление размеров элементов и размеров документа
- 1172 OnPaint()
- 1174 Преобразования координат
- 1175 Реакция на пользовательский ввод
- 1179 Печать
- 1180 Реализация команд меню Print и Print Preview
- 1184 Резюме
- 1131 Основные принципы рисования
- 1185 Глава 34. Windows Presentation Foundation (на компакт-диске)
- 1185 Обзор
- 1186 XAML
- 1190 Кооперация дизайнеров и разработчиков
- 1191 Иерархия классов
- 1192 Пространства имен
- 1194 Фигуры
- 1196 Трансформация
- 1197 Кисти
- 1197 SolidColorBrush
- 1198 LinearGradientBrush
- 1198 RadialGradientBrush
- 1198 DrawingBrush
- 1199 ImageBrush
- 1199 VisualBrush
- 1201 Элементы управления
- 1201 Простые элементы управления
- 1202 Элементы управления с содержимым
- 1203 Элементы управления с содержимым и заголовками
- 1204 Многоэлементные элементы управления
- 1205 Многоэлементные элементы управления с заголовками
- 1205 Компоновка
- 1205 StackPanel
- 1206 WrapPanel
- 1207 Canvas
- 1207 DockPanel
- 1208 Grid
- 1209 Обработка событий
- 1210 Стили, шаблоны и ресурсы
- 1210 Стили
- 1211 Ресурсы
- 1215 Триггеры
- 1216 Шаблоны
- 1223 Стилизация ListBox
- 1228 Резюме
- 1185 Обзор
- 1229 Глава 35. Расширенный WPF (на компакт-диске)
- 1229 Привязка данных
- 1229 Общий обзор
- 1230 Привязка с XAML
- 1233 Привязка простого объекта
- 1235 Объектный поставщик данных
- 1236 Привязка списка
- 1244 Привязка к XML
- 1246 Проверка привязки
- 1250 Привязка команд
- 1254 Анимация
- 1254 Временная шкала
- 1258 Триггеры
- 1260 Storyboard
- 1261 Добавление средств 3-D к WPF
- 1263 Треугольник
- 1264 Изменение освещения
- 1264 Добавление текстур
- 1265 Трехмерный объект
- 1268 Интеграция с Windows Forms
- 1268 Элементы управления WPF в приложениях Windows Forms
- 1269 Элементы управления Windows Forms в приложениях WPF
- 1271 Браузерное приложение WPF
- 1271 Резюме
- 1229 Привязка данных
- 1272 Глава 36. Дополнения (на компакт-диске)
- 1272 Архитектура System.Addin
- 1273 Сложности, связанные с дополнениями
- 1274 Канальная архитектура
- 1274 Исследование
- 1275 Активизация и изоляция
- 1278 Контракты
- 1279 Жизненный цикл
- 1280 Поддержка версий
- 1280 Пример дополнения
- 1281 Контракт калькулятора
- 1282 Представление дополнения калькулятора
- 1283 Адаптер дополнения калькулятора
- 1284 Дополнение калькулятора
- 1285 Представление хоста калькулятора
- 1286 Адаптер хоста калькулятора
- 1287 Хост калькулятора
- 1291 Дополнительные дополнения
- 1291 Резюме
- 1272 Архитектура System.Addin
- 1292 Глава 37. Страницы ASP.NET (на компакт-диске)
- 1293 Введение в ASP.NET
- 1294 Управление состоянием в ASP.NET
- 1294 ASP.NET Web Forms
- 1297 Модель кода ASP.NET
- 1299 Серверные элементы управления ASP.NET
- 1314 ADO.NET и привязка данных
- 1315 Усовершенствование приложения заказа мероприятий
- 1321 Дополнительные сведения о связывании данных
- 1327 Конфигурация приложения
- 1329 Резюме
- 1293 Введение в ASP.NET
- 1330 Глава 38. Разработка приложений с использованием ASP.NET
- 1331 Пользовательские и настраиваемые элементы управления
- 1332 Пользовательские элементы управления
- 1338 Пользовательские элементы управления в PCSDemoSite
- 1339 Настраиваемые элементы управления
- 1343 Ведущие страницы
- 1345 Доступ к содержимому ведущих страниц с Web-страниц
- 1345 Вложенные ведущие страницы
- 1346 Ведущие страницы в PCSDemoSite
- 1348 Навигация по сайту
- 1349 Навигация в PCSDemoSite
- 1351 Безопасность
- 1351 Добавление аутентификации с помощью форм с применением мастера Security Wizard
- 1354 Реализация системы входа
- 1355 Web-серверные элементы управления для входа на сайт
- 1356 Защита каталогов
- 1356 Безопасность в PCSDemoSite
- 1358 Темы
- 1359 Применение темы к странице
- 1359 Определение тем
- 1360 Темы в PCSDemoSite
- 1363 Web Parts
- 1363 Компоненты приложения Web Parts
- 1365 Пример Web Parts
- 1371 Резюме
- 1331 Пользовательские и настраиваемые элементы управления
- 1373 Глава 39. ASP.NET AJAX
- 1374 Что такое Ajax?
- 1376 Что такое ASP.NET AJAX?
- 1377 Центральная функциональность
- 1379 AJAX Library
- 1380 ASP.NET AJAX Control Toolkit
- 1380 Применение ASP.NET AJAX
- 1380 Пример Web-сайта ASP.NET AJAX
- 1383 Конфигурация Web-сайта, ориентированная на ASP.NET AJAX
- 1385 Дополнительные опции конфигурации
- 1386 Дополнительная конфигурация AJAX Control Toolkit
- 1386 Добавление функциональности ASP.NET AJAX
- 1394 Использование AJAX Library
- 1402 Резюме
- 1404 Глава 40. Visual Studio Tools for Office
- 1405 Обзор VSTO
- 1405 Типы проектов
- 1407 Средства проектов
- 1409 Основы VSTO
- 1409 Объектная модель Office
- 1410 Пространства имен VSTO
- 1410 Хост-элементы и хост-эелементы управления
- 1412 Базовая структура проекта VSTO
- 1415 Класс Globals
- 1415 Обработка событий
- 1416 Построение решений VSTO
- 1417 Управление дополнениями уровня приложений
- 1418 Взаимодействие с приложениями и документами
- 1419 Настройка пользовательского интерфейса
- 1424 Пример приложения
- 1433 Взаимодействие с VBA
- 1436 Резюме
- 1405 Обзор VSTO
- 1437 Часть VI. Коммуникации
- 1438 Глава 41. Доступ в Internet
- 1439 Класс WebClient
- 1439 Выгрузка файлов
- 1439 Базовый пример Web-клиента
- 1440 Загрузка файлов
- 1441 Классы WebRequest и WebResponse
- 1442 Другие средства WebRequest и WebResponse
- 1444 Отображение вывода в виде страницы HTML
- 1445 Обеспечение простого Web-серфинга из вашего приложения
- 1447 Запуск экземпляров Internet Explorer
- 1447 Предоставление вашему приложению больше дополнительных средства типа IE
- 1452 Печать с использованием элемента управления WebBrowser
- 1452 Отображение кода запрошенной страницы
- 1453 Иерархия Web-запросов и Web-ответов
- 1454 Служебные классы
- 1455 URI
- 1455 IP-адреса и DNS-имена
- 1456 Классы .NET для IP-адресов
- 1457 Пример DnsLookup
- 1458 Низкоуровневые протоколы
- 1458 Низкоуровневые классы
- 1467 Резюме
- 1439 Класс WebClient
- 1468 Глава 42. Windows Communication Foundation
- 1468 Обзор WCF
- 1470 SOAP
- 1470 WSDL
- 1471 JSON
- 1471 Простая служба и клиент
- 1472 Контракт службы
- 1473 Реализация службы
- 1473 WCF Service Host и WCF Test Client
- 1474 Специальный хост служб
- 1475 Клиент WCF
- 1477 Диагностика
- 1478 Контракты
- 1479 Контракт данных
- 1480 Поддержка версий
- 1480 Контракт службы
- 1482 Контракт сообщений
- 1482 Реализация службы
- 1487 Обработка ошибок
- 1488 Привязка
- 1491 Хостинг
- 1491 Специальный хостинг
- 1492 Хостинг WAS
- 1492 Клиенты
- 1494 Дуплексная коммуникация
- 1497 Резюме
- 1468 Обзор WCF
- 1498 Глава 43. Windows Workflow Foundation
- 1499 Пример «Hello World»
- 1500 Действия
- 1500 IfElseActivity
- 1502 ParallelActivity
- 1503 CallExternalMethodActivity
- 1504 DelayActivity
- 1504 ListenActivity
- 1506 Модель выполнения действий
- 1506 Пользовательские действия
- 1508 Верификация действий
- 1509 Темы и конструкторы
- 1511 ActivityToolboxItem и пиктограммы
- 1513 Пользовательские составные действия
- 1519 Рабочие потоки
- 1519 Последовательные рабочие потоки
- 1519 Рабочие потоки типа конечных автоматов
- 1522 Передача параметров рабочему потоку
- 1523 Возврат результатов из рабочего потока
- 1523 Привязка параметров к действиям
- 1525 Исполняющая среда рабочего потока
- 1525 Службы рабочих потоков
- 1527 Служба постоянства
- 1528 Служба отслеживания
- 1530 Пользовательские службы
- 1531 Интеграция с Windows Communication Foundation
- 1534 Хостинг рабочих потоков
- 1535 Инструмент Workflow Designer
- 1536 Резюме
- 1537 Глава 44. Enterprise Services
- 1537 Обзор
- 1538 История
- 1538 Где нужно применять Enterprise Services
- 1539 Контексты
- 1539 Автоматические транзакции
- 1540 Распределенные транзакции
- 1540 Организация пула объектов
- 1540 Безопасность на основе ролей
- 1540 Очередизованные компоненты
- 1541 Слабо связанные события
- 1541 Создание простого приложения COM+
- 1541 Класс ServicedComponent
- 1542 Подписание сборок
- 1542 Атрибуты сборок
- 1543 Создание компонента
- 1544 Развертывание
- 1544 Автоматическое развертывание
- 1545 Ручное развертывание
- 1545 Создание инсталляционного пакета
- 1546 Component Services Explorer
- 1548 Клиентское приложение
- 1549 Транзакции
- 1549 Атрибуты транзакции
- 1550 Результаты транзакции
- 1550 Пример приложения
- 1551 Сущностные классы
- 1553 Компонент OrderControl
- 1553 Компонент OrderData
- 1555 Компонент OrderLineData
- 1556 Клиентское приложение
- 1558 Интеграция WCF и Enterprise Services
- 1558 WCF-фасад службы
- 1561 Клиентское приложение
- 1562 Резюме
- 1537 Обзор
- 1563 Глава 45. Message Queuing
- 1563 Обзор
- 1564 Когда следует использовать Message Queuing
- 1565 Средства Message Queuing
- 1566 Продукты Message Queuing
- 1567 Архитектура Message Queuing
- 1567 Сообщения
- 1567 Очередь сообщений
- 1568 Административные инструменты очередей сообщений
- 1569 Создание очередей сообщений
- 1569 Свойства Message Queuing
- 1570 Программирование с использованием Message Queuing
- 1570 Создание очереди сообщений
- 1571 Нахождение очереди
- 1572 Открытие известных очередей
- 1573 Отправка сообщения
- 1576 Прием сообщений
- 1578 Приложение заказа курсов
- 1578 Библиотека классов заказа курсов
- 1578 Отправитель сообщения о заказе курса
- 1579 Отправка приоритетных и восстанавливаемых сообщений
- 1580 Получатель сообщений о заказе курсов
- 1583 Получение результатов
- 1584 Очереди извещений
- 1584 Очереди ответов
- 1585 Транзакционные очереди
- 1586 Message Queuing и WCF
- 1587 Сущностные классы с контрактом данных
- 1587 Контракт службы WCF
- 1588 WСF-приложение получателя сообщений
- 1590 WСF-приложение отправителя сообщений
- 1592 Инсталляция Message Queuing
- 1592 Резюме
- 1563 Обзор
- 1593 Глава 46. Службы каталогов
- 1594 Архитектура Active Directory
- 1594 Возможности
- 1595 Концепции Active Directory
- 1599 Характеристика данных службы Active Directory
- 1600 Схема
- 1600 Инструменты администрирования Active Directory
- 1601 Оснастка Active Directory Users and Computers
- 1602 Редактор ADSI Edit
- 1603 Программирование для Active Directory
- 1604 Классы пространства имен System.DirectoryServices
- 1604 Привязка
- 1609 Извлечение записей каталога
- 1611 Коллекции объектов
- 1612 Кэш
- 1612 Создание новых объектов
- 1613 Обновление записей в каталоге
- 1614 Получение доступа к собственным объектам ADSI
- 1616 Выполнение поиска в Active Directory
- 1620 Поиск пользовательских объектов
- 1620 Интерфейс пользователя
- 1621 Извлечение контекста именования схемы
- 1622 Извлечение имен свойств пользовательского класса
- 1623 Поиск пользовательских объектов
- 1624 Управление учетными записями
- 1626 Отображение информации о пользователе
- 1626 Создание пользователя
- 1626 Сбрасывание пароля
- 1627 Создание группы
- 1627 Добавление пользователя в группу
- 1627 Поиск пользователей
- 1628 Язык DSML
- 1629 Классы пространства имен System.DirectoryServices.Protocols
- 1629 Поиск объектов Active Directory с помощью DSML
- 1631 Резюме
- 1594 Архитектура Active Directory
- 1632 Глава 47. Одноранговые сети
- 1632 Обзор одноранговых сетей
- 1633 Клиент-серверная архитектура
- 1633 Архитектура P2P
- 1634 Архитектурные сложности P2P
- 1635 Терминология P2P
- 1636 Решения P2P
- 1636 Платформа Microsoft Windows Peer-to-Peer Networking
- 1636 Peer Name Resolution Protocol (PNRP)
- 1637 PNRP ID
- 1638 Группы (облака) PNRP
- 1639 People Near Me
- 1640 Построение приложений P2P
- 1641 System.Net.PeerToPeer
- 1646 System.Net.PeerToPeer.Collaboration
- 1650 Резюме
- 1632 Обзор одноранговых сетей
- 1651 Глава 48. Синдикация
- 1651 Обзор System.ServiceModel.Syndication
- 1653 Приложение Syndication Reader
- 1655 Предоставление Syndication Feeds
- 1659 Резюме
- 1661 Часть VII. Приложения (на компакт-диске)
- 1662 Приложение А. ADO.NET Entity Framework (на компакт-диске)
- 1662 Обзор ADO.NET Entity Framework
- 1664 Уровни каркаса сущностей
- 1664 Логический уровень
- 1665 Концептуальный уровень
- 1667 Уровень отображения
- 1667 Сущности
- 1670 Контекстный объект
- 1673 Отношения
- 1673 Таблица на иерархию
- 1675 Таблица на тип
- 1676 Запрос объектов
- 1680 Обновления
- 1680 Отслеживание объектов
- 1681 Информация об изменении
- 1682 Присоединение и отсоединение сущностей
- 1683 Сохранение изменений в сущностях
- 1684 LINQ to Entities
- 1685 Резюме
- 1686 Приложение Б. C#, Visual Basic и C++/CLI (на компакт-диске)
- 1687 Пространства имен
- 1688 Определение типов
- 1688 Ссылочные типы
- 1689 Типы значений
- 1689 Выведение типа
- 1690 Интерфейсы
- 1691 Перечисления
- 1691 Методы
- 1692 Параметры методов и типы возврата
- 1692 Модификаторы параметров
- 1694 Конструкторы
- 1694 Свойства
- 1696 Инициализаторы объектов
- 1696 Расширяющие методы
- 1696 Статические члены
- 1697 Массивы
- 1698 Управляющие операторы
- 1698 Оператор if
- 1698 Условная операция
- 1699 Оператор switch
- 1700 Циклы
- 1700 Оператор for
- 1700 Операторы while и do..while
- 1701 Оператор foreach
- 1702 Обработка исключений
- 1703 Наследование
- 1703 Модификаторы доступа
- 1703 Ключевые слова
- 1705 Управление ресурсами
- 1705 Реализация интерфейса IDisposable
- 1706 Оператор using
- 1706 Переопределение Finalize
- 1707 Делегаты
- 1708 События
- 1710 Обобщения
- 1712 Запросы LINQ
- 1712 Смешивание «родного» и управляемого кода в C++/CLI
- 1713 Специфика C#
- 1713 Резюме
- 1714 Приложение В. Windows Vista и Windows Server 2008 (на компакт-диске)
- 1714 Vista Bridge
- 1715 Управление пользовательскими учетными записями
- 1715 Приложения, требующие административных привилегий
- 1716 Защитная пиктограмма
- 1718 Структура каталогов
- 1719 Новые элементы управления и диалоговые окна
- 1719 Командная ссылка
- 1720 Диалог задач
- 1723 Файловые диалоги
- 1724 Поиск
- 1727 Поставщик OLE DB
- 1729 Расширенный синтаксис запросов
- 1731 Резюме
- 1732 Предметный указатель
Инструкция как скачать книгу Кристиан Нейгел, Билл Ивьен, Джей Глинн, Карли Уотсон, Морган Скиннер: C# 2008 и платформа .NET 3.5 для профессионалов в форматах DjVu, PDF, DOC или fb2 совершенно бесплатно.