четверг, 14 ноября 2013 г.

Почистить transaction log в случае его переполнения

Ситуация не стандартная, но если recovery mode стоит в full, то почистить переполнившийся transaction log не получится, потому что в него не получится записать информацию о чистке transaction log-а. Т.к. все время забываю, пусть скрипт для этого здесь полежит.
USE ИмяБазыДанных

ALTER DATABASE ИмяБазыДанных SET RECOVERY SIMPLE

DBCC SHRINKFILE (ЛогическоеИмяФайлаСЛогом, РазмерВмегабайтах);

ALTER DATABASE ИмяБазыДанных SET RECOVERY FULL

понедельник, 14 октября 2013 г.

AutomationProperties при тестировании пользовательского интерфейса

При использовании Microsoft Test Manager (MTM ) для тестирования пользовательского интерфейса есть два варианта ручное и автоматизированное тестирование. Автоматизированное, от ручного, отличается тем, что выполнив ручной тест, мы можем записать последовательность действий и запускать эту последовательность действий для выполнения регрессионного теста, или для проверки воспроизводится ошибка или нет. При записи, особенно когда идет выбор элемента в списке у MTM возникает проблема с идентификацией. Например, когда мы записывали тест, у нас сотрудник Иванов был третьим в списке, а сейчас, он второй. О том, как облегчить жизнь тестировщикам и улучшить определение элементов я сегодня и расскажу.

Выгрузка файлов из ASP .Net приложения

Всякими Web-сервисами пользуюсь постоянно, но тут возникла задача, написать сервис, который сможет отдавать файлы в любые приложения. Нашел в интернете несколько решений, что то не заработало, что то заработало но с некоторыми проблемами, которые пришлось решать. Все что находил было на английском, поэтому пусть здесь полежит, вдруг еще кому пригодится.
Еще раз, стоит задача написать web-приложение, которое получив http запрос с параметром, по параметру определит, какой файл мне нужен и отдаст его именно как файл.

воскресенье, 29 сентября 2013 г.

Показ дочерних View в рамках патерна MVVM

Время от времени, участвую в обсуждениях, как правильно в рамках паттерна MVVM показывать дополнительные (дочерние View) в отдельных окнах. Т.е. когда смотришь на диаграмму иллюстрирующую паттерн, все ясно: View знает про ViewModel только на уровне имен свойств указанных в биндинге, ViewModel вообще ничего не знает про View. Но вот, пользователь нажимает на кнопку и нам надо создать новые View и ViewModel для того, чтобы показать это все в отдельном окне... Что делать? Вот об этом сегодня и пойдет речь.

четверг, 19 сентября 2013 г.

Что делать, если запуск потоков зависит от событий, которые не реализуют уведомления?

Сегодня будет небольшой пример на многопоточность, в ответ на вопрос с форумов MSDN.
Задача состоит в том, что есть внешний источник информации, который говорит нам сколько потоков запускать, также там есть информация о том, готово ли все для запуска или нет. Если таким источником данных является MS SQL сервер, то узнать о том, что там поменялась информация мы можем только обратившись за ней сами. Все, перехожу к примеру.

суббота, 14 сентября 2013 г.

пятница, 13 сентября 2013 г.

О чем молчит диаграмма Ганта или почему проекты всегда опаздывают

Каждый раз, когда я смотрю на диаграммы Ганта, меня мучает один и тот же вопрос. Как? Вот как можно быть уверенным, что ресурс А, выполнит задачу Б за 5 дней? Нет, я понимаю, что есть исторические данные, есть, не побоюсь этого слова, статистика. Но вот как можно на основе всего этого делать уверенные прогнозы? Я не понимаю.
Если для вас термины «взаимозависимость событий» и «статистические отклонения» говорят что-то не только по отдельности, но и в совокупности, то статья вас вряд ли заинтересует. А вот если эти термины, употребленные в одном контексте, не говорят вам в чем проблема диаграмм Ганта, то приглашаю под кат, где на простом примере мы это и обсудим.
Продолжение статьи на Хабре.