Главная » C#

Анализ и обработка чисел в Visual C# (Sharp)

Добавлено Дата: 11 February, 2014 категория: C#

Региональные  стандарты  и  страна  играют  важную  роль  при  обработке  чисел и дат, которые хранятся в виде строк. Представьте себе выполнение  сложения чисел, хранящихся  в  виде  строк.  Пример  такого  сложения  продемонстрирован на рис. 3.12.

Читать »

Использование    лямбда-выражений в электронной таблице в Visual C# (Sharp)

Добавлено Дата: 10 February, 2014 категория: C#

Члены данных worksheeto очень похожи на объявленные ранее в классе листа, за исключением того, что объявления готовы к  использованию  лямбда-выражений. Под этим я имею в виду, что всегда, когда я хочу объявить переменную, ссылауюся на лямбда-выражение, то использую тип Funco. Далее приводится исхоый код для членов данных для хранения состояния ячейки, вычисления состояния одной ячейки и вычисления состояния всех ячеек в столбце:

Читать »

Отделение объектов данных от объектов действия в Visual C# (Sharp)

Добавлено Дата: 8 February, 2014 категория: C#

Другим решением проблемы сериализации будет разработка нескольких объектов данных, предназначенных единственно для сериализации и обращения к данным. Такой подход полезен для двоичной сериализации, т. к. таким образом можно бее эффективно решить проблему управления версиями. Далее приводится пример исходного кода, реализующего данный подход:

Читать »

Разбивка результатов на группы LINQ в Visual C# (Sharp)

Добавлено Дата: 7 February, 2014 категория: C#

В предыдущих примерах запросы LINQ возвращали список клиентов, которым нужно присвоить дополнительные бонусные очки. Но что, если мы не хотим прваивать очки сразу же? Что, если мы хотим разбить клиентов на группы: тех, которые должны получить очки  и  тех,  которые  не должны  получить  очки?  Даая  задача решается  с помощью возможности  группирования  LINQ,  как показано в следующем коде:

Читать »

Загрузка сборок со строгими именами в Visual C# (Sharp)

Добавлено Дата: 5 February, 2014 категория: C#

В  предыдущем  разделе  был  продемонстрирован  способ  динамической  загрузки, в котором явным образом определялось местонахождение сборки, после чего соавался экземпляр типа этой сборки. Другой подход к созданию экземпляра сборки заключается в использовании формального объявления типа.

Читать »

Создание конфигурационного XML-файла в Visual C# (Sharp)

Добавлено Дата: 5 February, 2014 категория: C#

Конфигурационный файл создается с помощью языка XML (Extensible Markup Language, расширяемый  язык разметки). Язык XML представляет собой средство для структуризации текстовой информации.

Рассмотрим следующий текст, структурированный с помощью пробелов:

Читать »

Выборка и изменение данных LINQ в Visual C# (Sharp)

Добавлено Дата: 4 February, 2014 категория: C#

При исполнении запроса LINQ обрабатываемые данные не обязательно должны оаваться в своем первоначальном виде. Скажем, что у нас имеется список клиентов, среди которых мы выбрали группу клиентов, заслуживших дополнительные очки за лояльность компании. Мы хотим отобрать этих клиентов, увеличить значение их оов, после чего возвратить список клиентов, чьи данные были изменены. Для выпоения этой задачи применяется LINQ в комбинации с методами расширения.

Читать »

Тонкая настройка сериализации в Visual C# (Sharp)

Добавлено Дата: 4 February, 2014 категория: C#

Когда имеем дело с сериализацией, может возникнуть ситуация, когда определеый текстовый или двоичный формат требует дополнительной обработки. Кроме этого, может быть желательным не подвергать сериализации некоторые объекты.

Специальная сериализация

Читать »

Лямбда-выражения в Visual C# (Sharp)

Добавлено Дата: 4 February, 2014 категория: C#

Теперь мы готовы рассмотреть решение проблемы этой главы с помощью лямбдыражений, в основе которых лежат те же идеи, что и для анонимных методов. Дее приводится код примера для вычисления текущей суммы и максимального знения, модифицированный с использованием лямбда-выражений:

Читать »

Создание потока, имеющего состояние в Visual C# (Sharp)

Добавлено Дата: 4 February, 2014 категория: C#

В предыдущем примере потоки не управляли никаким состоянием. В большинстве же случаев потоки обращаются к какому-либо состоянию. Использование состоий в контексте анонимных методов и лямбда-выражений представляет собой сложную задачу. (Подробности об управлении состоянием с помощью лямбдыражений см.  в главе 11.)

Читать »

Добавление элементов конфигурации динамической загрузки в Visual C# (Sharp)

Добавлено Дата: 4 February, 2014 категория: C#

Следующим шагом после добавления конфигурационного файла является добавлие элементов, которые будут использоваться динамическим загрузчиком. Идея заключается в определении абстрактного идентификатора, с которым будет создана

перекрестная ссылка, соотносящая его с типом и сборкой. Таким образом,  чтобы загрузить сборку Implementationsi.Implementation, МЫ  ИСПОЛЬЗуем  идентифико р Impll, ТИП Implementationsi. Implementation И сборк у Implementationsl.dll . Подобным образом, impi2 будет иметь перекрестные ссылки на тип impiementations2. implementation и сборку Iniplementations2.dll. Модифицируйте конфигурационный файл следующим образом:

Читать »

Культурная среда в Visual C# (Sharp)

Добавлено Дата: 3 February, 2014 категория: C#

В .NET информация о культурной среде указывается с помощью двух идентификоров: языка и региональных стандартов. Как было упомянуто ранее, в Швейцарии разговаривают на четырех языках. Это означает, что  дата,  время  и  денежная  едица выражаются в четырех разных способах. Это не означает, что формат даты разный в немецком и французском языках. Но при одинаковом формате слова для обозначения марта — Maerz или Mars —  будут  разными.  С  другой  стороны,  слова для обозначения дат одинаковые в Австрии, Швейцарии  и  Германии,  но  формат даты разный. Это означает,  что для  стран  с  несколькими  языками,  например  Каны (французский и английский) или Люксембурга (французский и немецкий), нбходимо применение нескольких кодировок, отсюда и надобность в двух идентикаторах. Информацию  о  культурной  среде  можно  извлечь  с  помощью следующего   кода:

Читать »

Тип Stack в Visual C# (Sharp)

Добавлено Дата: 3 February, 2014 категория: C#

Тип stac k — это специальный список (стек), который можно сравнить со стопкой листов бумаги. При добавлении элементов в стек, последний добавленный элемент извлекается первым. Пример использования типа stac k приводится в следующем коде:

Stack<string> stack = new Stack<string>();

Читать »

Считывание конфигурационного файла в Visual C# (Sharp)

Добавлено Дата: 3 February, 2014 категория: C#

Считывание  конфигурационного  файла  не   представляет  ничего  сложного,  т. к.

.NET Framework имеет легкий в употреблении конфигурационный интерфейс API. Например, значение ключа Assemblies можно считать с помощью следующего кода,

который нужно добавить в приложение в начале его исполнения, например в метод

Читать »

Использование потоков в Visual C# (Sharp)

Добавлено Дата: 2 February, 2014 категория: C#

На компьютерах под управлением операционной системы Windows задачи могут выполняться двумя способами: посредством потоков и посредством процессов. Процесс  представляет  собой  исполнение   программы,   для   которой   операциоая  система  выделяет  ресурсы,  включающие,  между  прочих,  и  кванты  времени. А поток — это легковесный процесс, исполняемый в контексте главного процесса.

Читать »