Denis Gladkikh
Russian   |  English
Страница  ...  2  3  4  5  6  7  8  9  10  11  12  ...  

Регистрация горячей клавиши (hotkey) в системе для WPF приложения

Пару дней назад мне попался на форумах GotDotNet вопрос [C# + WPF] Отлов нажатий клавиш, хуки, горячие клавиши в проекте WPF, зашел туда, посмотрел, и в голове всплыло, что год назад я реализовывал похожее на WinForms, регистрировал глобальные клавиши в системе для приложения. Делал я это для проекта Vista Keys Extender. Так как я на 100% помнил, что у меня там все работало, я сразу предложил автору вопроса посмотреть на тот мой проект, чтобы найти нужное решение. Однако, мой проект не подошел для решения данного вопроса, так как в WPF работа с сообщениями реализовано по-другому. Все же я решился помочь автору в этом вопросе и разобраться с данной проблемой. Отталкиваться я начал опять же с моего проекта, шаг за шагом разбираясь, что нужно изменить и как.



Config Transformation Tool: Теперь поддерживаются параметры

Пару недель назад я писал про небольшую утилиту Config Transformation Tool, которую я создал на базе задачи трансформирования web.config файла. В тот момент у меня сразу же возникла идея, что было бы неплохо еще иметь возможность указывать места в файле-трансформере, вместо которых можно было бы подставлять значения при помощи этой утилиты. И вот, сегодня я готов объявить, что мне удалось решить эту задачу. Сначала хотелось бы поблагодарить AlexBar, за то, что он порекомендовал посмотреть глубже при помощи .Net Reflector в недры библиотеки Microsoft.WebApplication.Build.Tasks.Dll, и отыскать там класс Microsoft.Web.Publishing.Tasks.XmlTransformation, который умеет выполнять XML-Document-Transform для строк. Мне это очень сильно упростило реализацию. Чтобы утилита смогла поддерживать параметры мне предстояло решить две задачи: (а) уметь пробегаться по файлу и подставлять значения вместо параметров, (б) уметь парсить командную строку на предмет передачи параметров со значениями.



Переход на Team Foundation Server 2010. Система для ведения задач и базы знаний.

Я уже писал не раз, что на текущей моей работе мы использовали систему контроля исходного кода похожую на Visual SourceSafe (от Dynamsoft). Да-да это когда делаешь Check Out, а тебе стучатся в мессенджер и просят сделать поскорее Check In, так как кому-то тоже нужно бы с этим файлом поработать (кто не знает он лочит файлы на сервере, один файл можно менять только одному человеку за раз). Но это время наконец-то забыто, и мы планово перешли на Team Foundation Server 2010 около месяца назад. В сети есть куча примеров, как сделать импорт из Visual SourceSafe в TFS с сохранением всей истории, но, к сожалению, у нас был не совсем VSS, и тратить много времени на изучение, как это правильно сделать не хотелось, потому было решено просто залить последний рабочий код. Кстати, именно в это время у нас состоялся freeze версии, потому мы и нашли немного свободного времени, и спокойно начали переходить. Для системы bug tracking у нас использовался Redmine, достаточно удобная штука (да еще и бесплатная). Теперь для ведения задач у нас это TFS, а для форумов, wiki страниц и остального - это Windows SharePoint Services 3.0, который становится рядом с TFS. Что ж, хотелось бы поделиться немного своими впечатлениями.



Wrox–Professional WCF 4–Windows Communication Foundation with .NET 4

0470563141Пару недель назад мне в руки попала бумажная копия книги Pablo Cibraro, Kurt Claeys, Fabio Cozzolino, Johann Grabner - Professional WCF 4: Windows Communication Foundation with .NET 4. По объему данная книга получилась не очень большая – около 400 страниц, честно говоря, уже забыл, когда видел такие “тоненькие” книжки по технологиям. Книга по объему не большая, но охвачено там достаточно интересных тем.

Первая глава – это паттерны и принципы создания SOA-приложений. Это, конечно же, лучшая глава в данной книге, видно, что у авторов есть опыт создания приложений типа Service-oriented architecture. Авторы описали всевозможные архитектурные принципы, по которым можно создать SOA-приложения. Причем они не опирались только на WCF, а постарались описать все принципе вообще, которые можно реализовать при помощи WCF, и для которых WCF не совсем предназначен. В общем, эта глава must read для всех, независимо от того, какие технологии вы используете. И по счастливому случаю wrox предоставил данную главу для ознакомления с книгой в свободном доступе на своем сайте Design Principles and Patterns. Всего 30 страничек, не поленитесь прочитать.




Встраиваем MetaWeblog API на свой сайт

Пару недель назад мне попалась на глаза небольшая статья Feels like a new day – implementing the MetaWeblog API. В тот же момент у меня и родилась мысль, что нужно сделать поддержку MetaWeblog API, а следовательно и Windows Live Writer, у себя на сайте. В прошедшие выходные нашел немного свободного времени и начал исследование ссылок, которые были в статье. Обе ссылки, в которых были примеры реализации, основывались на XML-RPC.NET, мне же хотелось все реализовать на WCF сервисах. В пару кликов нашел статью XML-RPC with WCF (Updated), в которой был небольшой пример реализации на WCF сервисах и реализована библиотека, в которой был XML-RPC Behavior с самодельным сериализатором, поддерживающим XML-RPC. В общем, материал был найден и я приступил к реализации.



Config Transformation Tool: Используем XDT Transformation

В ASP.NET 4 появилась фича Web.Config Transfomration, на первый взляд очень полезная и интересная вещь для развертывания веб-приложений. Она позволяет указывать для web.config файла вашего веб-приложения файл трансформации, который по определённому синтаксису (XDT) будет заменять, удалять или добавлять элементы файла web.config при развертывании. Синтаксис очень простой, потому сразу же захотелось использовать его, и не только для web.config, а и для log4net.config, unity.config и всех остальных config-файлов, которые лежат рядом. Более того, я сразу подумал о том, чтобы использовать эту фичу и для WinService приложения (консольное приложение в основе). И начал мечтать, как было бы хорошо, когда я бы настроил билд в CCNet и при развертывании у меня все настройки хорошо бы трансформировались по нужной конфигурации. Но оказалось не так все просто, данная фича по умолчанию работает только для web.config, но я решил не отчаиваться и найти решение, результатом которого стала небольшая программка Config Transformation Tool.



Работаем с CodePlex. Как запомнить пароль для проекта?

Решил выложить один мелкий проект на codeplex. Думаю, что многие знают, что с codeplex можно работать как через SVN клиент, так и через TFS. Так вот через SVN у меня работать как-то не получилось, при попытке добавить dll в папку у меня вылетало такое вот сообщение “Server sent unexpected return value (200 OK) in response to PUT request for ”. Как его побороть не понятно, нашел дискуссию на codeplex по этой теме Can't commit binary files using TortoiseSVN, последнее сообщение было в прошлом году, что не радует. Ну ладно, все равно сейчас с TFS работаю, потому перелез на TFS и для codeplex. Но там есть тоже неприятный момент – Visual Studio спрашивает постоянно пароль при каждом новом подключении к проекту, а галочки Save credentials нет. Но способ есть.



Приобрел SSD диск Intel® X25-M

Получил пару дней назад свой SSD диск Intel® X25-M на 80Gb. Купил его на Amazon.com и переправил при помощи Shipito. В сумме получилось около 270$ вместе с 2.5" SATA Hard Drive Case. Получилось бы дешевле на 30$, если бы друзья упаковщики на amazon учитывали бы кнопочку отправить все в одной коробке. А так доплатил еще на shipito за упаковку всего в отдельную коробку, чтобы была одна посылка вместо двух, а то этот Case был бы вообще золотым. В общем, немного своих впечатлений после пару рабочих дней…



Первые впечатления о LightSwitch

lightswitch

Как и многие скачал я себе LightSwitch, недавно он стал доступен для MSDN подписчиков. Скачивал и устанавливал я его не просто так, чтобы посмотреть, а у меня в голове были уже идеи, как это можно было бы использовать в текущем проекте. Наш основной проект сейчас – это модульное Silverlight приложение, один из модулей – это административная часть с кучей редактируемых таблиц (буду называть их справочниками). Мне не хотелось делать отдельные представления на каждый справочник, потому я сделал механизм, который позволял просто заполнять DataGrid по имени таблицы и списку полей. Причем поля можно указываться и из таблиц, на которые есть ссылки (reference) из главной таблицы, на сервере построится правильный join. Так же реализовал свой DataForm, к сожалению стандартный расширить не получилось, из-за того что там были спрятаны некоторые необходимые методы и свойства, и помню, что в WPF эти свойства спрятаны не были, ну да ладно. В итоге, на сервер передаются объекты и построенные запросы: что нужно отобразить, что показать. То есть, чтобы добавить редактирование новой таблицы CronTask мне теперь необходимо сделать буквально следующее...



Страница  ...  2  3  4  5  6  7  8  9  10  11  12  ...