Еще одна забавная ошибка терзает меня не первый месяц в VS2010. Не работает T4 (Text Template Transformation Toolkit), падает, в основном, с такой ошибкой (или предупреждением):
Package 'Microsoft.VisualStudio.TextTemplating.VSHost.OrchestratorPackage, Microsoft.VisualStudio.TextTemplating.VSHost.10.0, Version=10.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a' failed to load...
Эта хрень возникает после установки английской студии на машину, где раньше стояла русская. Разгадка таится в следующем ключе в реестре:
HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\10.0\DSLTools\ShowWarningDialog
Злобная VS RU оставила нам там подарочек в виде значения:
Истина/Ложь
Так что есть смысл поменять на соответствующее нерусское слово (True/False) и радоваться.
Ссылка на баг репорт в Microsoft Connect
понедельник, 20 июня 2011 г.
Проблемы с VS2010 SP1 | MS Security Essentials
Пол утра пытаюсь установить первый сервис пак на vs2010, при ужасно медлительной установке, и в результате стабильно получаю следующую ошибку:
"Microsoft Visual Studio 2010 Service Pack 1 cannot be installed because the state of this computer does not support it."
Кофиг такой: Windows 7, Visual Studio 2010 Professional, x86
Оказывается! Надо тупо доставить из оригинального установщика нечто под названием "Microsoft Office Developer Tools". Супер.
---
Помимо прочего TuneUp ругается на фиговые драйвера, имена которых начинаются на "MpKsl". Это нагадил туда MS Security Essentials. Снёс все с восклицательным знаком, не жалею.
"Microsoft Visual Studio 2010 Service Pack 1 cannot be installed because the state of this computer does not support it."
Кофиг такой: Windows 7, Visual Studio 2010 Professional, x86
Оказывается! Надо тупо доставить из оригинального установщика нечто под названием "Microsoft Office Developer Tools". Супер.
---
Помимо прочего TuneUp ругается на фиговые драйвера, имена которых начинаются на "MpKsl". Это нагадил туда MS Security Essentials. Снёс все с восклицательным знаком, не жалею.
вторник, 14 июня 2011 г.
Подменяем внешние библиотеки в зависимости от конфигурации
Один из проектов запущен на 64-х битном сервере, но на рабочих местах разработчиков в основном стоит x86 система. Я прикручивал систему логирования (elmah) в качестве внешней библиотеки и приходилось каждый раз при публикации заменять x86 файлы для тестирования разработки на версии x64.
Результатом стал небольшой скрипт, вписанный в события построения (Project Properties->Build Events):
if $(ConfigurationName) == Debug (
xcopy /s/e/y/i/r/f "$(SolutionDir)Dlls\Elmah-x86" "$(TargetDir)"
) else (
xcopy /s/e/y/i/r/f "$(SolutionDir)Dlls\Elmah-x64" "$(TargetDir)"
)
Результатом стал небольшой скрипт, вписанный в события построения (Project Properties->Build Events):
if $(ConfigurationName) == Debug (
xcopy /s/e/y/i/r/f "$(SolutionDir)Dlls\Elmah-x86" "$(TargetDir)"
) else (
xcopy /s/e/y/i/r/f "$(SolutionDir)Dlls\Elmah-x64" "$(TargetDir)"
)
вторник, 7 июня 2011 г.
C# Nullable DateTime
Последнее время, когда я учился получать данные из бд, меня часто мучал вопрос, почему извлеченная нулевая дата (в базе == NULL) таковой не является? И почему я не могу написать DateTime dt = null? Надо было проявить чуть интереса.
Да, DateTime это, оказывается, структура. А структура это value type и не может быть null, ответ на поверхности.
А для проверки некорректности даты следует использовать
dt == DateTime.MinValue
// DateTime.MinValue = 00:00:00.0000000 January 01, 0001
Также, конечно, можно использовать Nullable<DateTime> = "DateTime?".
Маленькая статейка по теме:
Nullable DateTime
[SerializableAttribute] public struct DateTime : IComparable, IFormattable, IConvertible, ISerializable, IComparable<DateTime>, IEquatable<DateTime>
Да, DateTime это, оказывается, структура. А структура это value type и не может быть null, ответ на поверхности.
А для проверки некорректности даты следует использовать
dt == DateTime.MinValue
// DateTime.MinValue = 00:00:00.0000000 January 01, 0001
Также, конечно, можно использовать Nullable<DateTime> = "DateTime?".
Маленькая статейка по теме:
Nullable DateTime
четверг, 2 июня 2011 г.
Заметка от передаче файлов в ответе сайта
Замечали ли вы, что браузер ссылки на некоторые файлы пытается сразу открыть, а некоторые — сохранить? Например, pdf-файлы в браузере Chrome.
Вот ссылка, которая открывается в браузере.
Пример загружаемого файл, к сожалению, с налета привести сейчас не могу (если есть, приводите в комментах!), но разница заключается в одном ключе заголовка ответа (Response Header):
Описание ключа в статье на вики.
Вот ссылка, которая открывается в браузере.
Пример загружаемого файл, к сожалению, с налета привести сейчас не могу (если есть, приводите в комментах!), но разница заключается в одном ключе заголовка ответа (Response Header):
- Content-Disposition:attachment; filename="file.ext"
Описание ключа в статье на вики.
Так же там периодически мелькает информация о сервере и на чем реализована страница, что тоже явилось для меня небольшим, но открытием:
- Server:Microsoft-IIS/7.5
- X-AspNet-Version:2.0.50727
- X-Powered-By:ASP.NET
Подписаться на:
Сообщения (Atom)