ASP.NET MVC 2 и jqGrid

Набросал небольшую статью.
Показал как прикрутить и отобразить данные с помощью плагина jqGrid, в дальнейшем планирую рассмотреть сценарии CRUD и различные типы входящих данных.

А не организовать ли нам сходку программистов?

Либо тематическую, либо просто так пообщаться, мыслей новых набраться?
Кто что думает?

Место и время сходки.
Время: 19:00
Локация: 108 чайников maps.yandex.ru/-/CFWViis

А есть ли среди нас разработчики использующие GAE или GWT?

Может есть интересующиеся? может соберемся пообщаемся. Я только только начала изучать GAE, и использую его для создания серверной части Silverlight приложения.

О чем это я:
Google App Engine
Google Web Toolkit

Требуется C# разработчик

Требуется светлая голова.

Требования:
Высшее образование.
&& Опыт разработки приложений с применением .Net (C#) >= 2 года.
&& Работы с одной из СУБД (Oracle || MS SQL).
&& Опыт работы с системами контроля версий.
&& Желание учиться.

Зарплатная вилка: 16-23.

Если заинтересовало кидаем ссылки на резюме сюда или в личку.

Материалы по Command Query Responsibility Segregation

Статьи
CQRS, Task Based UIs, Event Sourcing agh! Хорошая статья с обзором элементов шаблона CQRS
Clarified CQRS PDF — Детальный обзор элементов и процессов архитектуры решения на основе CQRS
CQRS à la Greg Young и CQRS – The Domain Events — Разбор CQRS с примерами кода от Mark Nijhof автора фреймворка Fohjin
DDDD, CQRS and Other Enterprise Development Buzz-words — Статья Рината Абдуллина о применении DDDD и CQRS в разработке приложений.
Обсуждение Axonframework CQRS Framework с его разработчиком в InfoQ
лента твиттов о CQRS

Видео и слайды
Выступление Greg Young на QCon
Видео и слайды выступления Udi Dahan на встрече .NET User Group в Лондоне
Видео выступления Джонатана Оливера на Utah Code Camp
Введение для новичков от Джонатана Оливера

Примеры приложений
Тестовое приложение использующее DDDD и Ncqrs Framework
Пример использования фреймворка Fohjin

Фреймворки CQRS
.NET
NCQRS Framework
Agr.CQRS
Fohjin

Java
Axon Framework

В довесок ко всему этому создал с помощью Yahoo pipes агрегированный RSS по CQRS

JSON serializer Generic extension

Работая над своим мелким проектом на Silverlight 4, пришла в голову мысль скрестить Extension Methods и Generics.
Получилось замечательно.



( Читать дальше )

Взаимодействие Silverlight приложения с PHP

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

Итак, опишем задачу. Silverlight приложение позволяет вводить текст и отсылать его на сервер, где эти данные обрабатываются PHP скриптом — вычисляется MD5 хеш, который отсылается клиенту, полученные данные отображаются в ТеxtBox.

Примечание: В Silverlight 4 RC функций по вычислению MD5 хеша все еще нет, хотя при непродолжительном поиске можно найти готовые классы.


( Читать дальше )

ACM ICPC 2010. Финал

ACM ICPC это Международная студенческая олимпиада по программированию.
Если вдруг кому интересно то вот монитор, видеотрансляция, задачи.

Как удалить из строки все буквы кроме некоторых?

Иногда возникает задача удалить из строки все символы кроме некоторых. На мой взгляд для этой задачи регулярные выражения в самый раз задуманы.
для Oracle
select regexp_replace('АаБбВвГгДдЕеЁёЖжЗзИиЙйКкЛлМмНнОоПпРрСсТтУуФфХхЦцЧчШшЩщЪъЫыЬьЭэЮюЯя','[^кя]','',1,0,'i') from dual;

Для углубления в тему регулярных выражений в Oracle следует почитать это.

для C#

Regex r = new Regex("[^кя]*",RegexOptions.IgnoreCase);
Console.WriteLine(r.Replace("АаБбВвГгДдЕеЁёЖжЗзИиЙйКкЛлМмНнОоПпРрСсТтУуФфХхЦцЧчШшЩщЪъЫыЬьЭэЮюЯя", ""));

Для .Net кодеров полезно прочитать — Регулярные выражения в .NET Framework

Как получить имя колонки таблицы на которую мапится свойство NHibernate класса?

How to Get Field's Name from property?

Понадобилось мне получить в runtime имя колонки таблицы на которую мапится NHibernate объект. Вот и наваял хелпер для этого.

public class NHibernateHelper
    {
        private ISessionFactory _factory;
        /// <summary>
        /// Конструктор
        /// </summary>
        /// <param name="factory"></param>
        public NHibernateHelper(ISessionFactory factory)
        {
            if (factory == null) throw new ArgumentNullException("factory");
            _factory = factory;
        }

        /// <summary>
        /// Метод возвращает название колонки таблицы на которую мапится свойство
        /// </summary>
        /// <typeparam name="T">NHibernate класс</typeparam>
        /// <param name="propertyName">Имя свойства</param>
        /// <returns>Имя колонки таблицы</returns>
        public string TableColumn<T>(string propertyName) where T: class
        {
            SingleTableEntityPersister persister = (SingleTableEntityPersister)_factory.GetClassMetadata(typeof(T)); ;
            return persister.GetPropertyColumnNames(propertyName)[0];
        }
    }


Пример использования

Helpers.NHibernateHelper entityHelper = new Helpers.NHibernateHelper(Domain.SessionFactory);
entityHelper.TableColumn<DocumentType>("FormatSerNum");