Пример кода из MSDN для работы с TcpListener исправление

На этой странице приводится пример бесконечного прослушивания порта 13000 на локальной машине

Но это прослушивание не бесконечно, т.к. не сделан выход из цикла, при прочтении последних байт сообщения

Может правильно как-то иначе, но вот исправленный рабочий кусок кода (исправление выделено):


После этого код действительно работает именно так как ожидается :)

Error:Could not load file or assembly Microsoft.mshtml

Первый способ: забрать сборку из c:\Program Files (x86)\Microsoft Visual Studio 10.0\Visual Studio Tools for Office\PIA\Common\Microsoft.mshtml.dll

Второй: при билдинге у референса поставить свойство "Copy to local" в true

ASP.NET WebForms: Невозможно проверить элемент управления на который ссылается свойство ControlToValidate

Для использования валидаторов с кастомным контролом необходимо пометить класс контрола атрибутом ValidationPropertyAttribute и указать в конструкторе атрибута название свойства, которое будет проверяться

Javascript: запрет обновления страницы

Нижеприведенный код запрещает обновление страницы путем перехвата соответствующих нажатий клавиш в документе
Перехватываются нажатия: F5, CTRL+F5, CTRL+R, CTRL+SHIFT+R

Пример кода  можно проверить по ссылке http://fiddle.jshell.net/5UZCP/show/ и поменять по адресу http://jsfiddle.net/5UZCP/


Пример работы:
Запрет осуществляется путем переопределения функции onkeydown документа (стр. 9)
В строке 10 проверяется нажата ли клавиша F5, а в строке 11 - CTRL+R
В этих случаях достаточно вернуть false, чтобы прекратить дальнейшую обработку браузером нажатия клавиш

Может кому пригодится

Disabling an ASP.Net Validator through Javascript

var myVal = document.getElementById('myValidatorClientID');
ValidatorEnable(myVal, false);

Как достать страницу из гугл кэша

Решение совсем простое:
http://webcache.googleusercontent.com/search?q=cache:http://<your page url>

Или введите сюда Адрес сайта:



UPD: Недавно вновь понадобилось достать страницу из кеша, но в гугле её не оказалось. Если у вас такая же ситуация, то можете попробовать web.archive:





Postgresql: The database cluster initialisation failed

Полный текст ошибки:

---------------------------
Warning
---------------------------
Problem running post-install step. Installation may not complete correctly
 The database cluster initialisation failed.
---------------------------
OK   
---------------------------

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

Варианты решения:
1. Установить в отдельную папку и заранее дать все права пользователю postgres
2. Во время установки по быстрому успеть выдать пользователю postgres все права на папку \Program Files\PostgreSQL\

Первый блин комом :)

Unsafe JavaScript attempt to access frame with URL

При необходимости вызывать функции родительского окна из iframe получаю эту ошибку и именно в Google Chrome

Тестировал простым путем - создав 2 локальных файла
Оказалось что "Unsafe JavaScript attempt to access frame with URL" возникает именно в Google Chrome при использовании локальных файлов, т.е. их достаточно разместить на каком-нить http-сервере и вызовы будут работать

Пример родительского окна:





Пример iframe:



Если такая трабла в будущем будет и с серверных страниц, то можно менять location.hash, а в родителе уже отслеживать его изменение :)

UPD: кстати, document.domain должен быть одинаков, чтобы гарантировать работу во всех браузерах

A potentially dangerous Request.Path value was detected from the client

Если Вы уверены в корректности данных и их правильной обработке, то поможет исправление файла web.config:


requestValidationMode - указывает режим валидации
requestPathInvalidCharacters - указывает символы, которые следует считать инвалидными в адресе запроса

Windows Server 2012 RC

Сегодня вечером стал доступен Windows Server 2012 Release Candidate
Скачать можно с официального сайта
Версия с ADK (Assessment and Deployment Kit) доступна только в англоязычном варианте

415 Cannot process the message

Оригинальное сообщение об ошибке: 415 Cannot process the message because the content type 'application/json; charset=UTF-8' was not the expected type 'text/xml; charset=utf-8'

Возможно сервис не прописан в конфигурации приложения, например так:
  
      behaviorConfiguration="XXX.SharePoint.WebServices.CustomServiceBehaviour"
      name="XXX.SharePoint.WebServices.Calculators">
                 
                    address=""
                    binding="webHttpBinding"
                    contract="XXX.SharePoint.WebServices.ICalculators"
                />
                 
                    address="mex" 
                    binding="mexHttpBinding" 
                    contract="IMetadataExchange" 
                />
        

Также можно попробовать атрибут:
[AspNetCompatibilityRequirements(RequirementsMode=AspNetCompatibilityRequirementsMode.Allowed)]

Skydrive в стиле Metro

Наравне с обновлением hotmail (http://outlook.com/) мы получили и обновленную версию скайдрайва
Очевидно Microsoft делает ставку на планшеты



Non white space characters cannot be added to content

1. new XDocument("root") => new XDocument(new XElement("root"))
2. doc.Add(new XElement("child")) => doc.Root.Add(new XElement("child"));
3. new XElement("childWithAttr", "a=b") =>new XElement("childWithAttr", new XAttribute("a", "b"))

Reactive Extensions 2.0

Вышла релизная версия Reactive Extensions версии 2.0
На официальной странице пока предлагается скачать beta-версию, но в Microsoft Download Center уже доступна новая версия без пометки beta

Где можно использовать Rx v2.0::
  1. .NET Framework 4
  2. .NET Framework 4.5
  3. .NET Framework 4.5 for Windows Store apps
  4. Silverlight 5
  5. Windows Phone 7.1

Как правильно задать идентификатор контрола

Сразу оговорюсь – в основном речь идет об идентификаторах контролов, используемых в ASP.NET WebFormsimage

Для себя я выработал достаточно четкие правила для идентификации контролов и я к ним очень привык, но достаточно часто на различных форумах встречаю совершенно неприемлемые, как то: TextBox1, ListView5, ConfirmPassword и т.п.

Префикс – сокращенное название типа контрола, но в большей степени выражающая его функциональные особенности
Например:

  • txtPassword – здесь префикс txt показывает, что это именно текстовый контрол, при чем не суть важно как он выльется в HTML (textarea, input[type=text], input[type=password] и т.п.) – у него точно есть свойство Text
  • btnDelete – это кнопка, есть свойства Text, OnClientClick
  • listSections – этот контрол выводит список чего-либо и у него есть свойство DataSource и метод DataBind() (хотя он как бы у всех есть Улыбка)
  • placeUserInfo – панель которую можно скрыть, хотя именно для панелей я иногда писал префикс panel

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

Отправка Push уведомлений для IPhone из .NET

Вкратце:
  • Сообщение отправляется из приложения по SSL в APNS
  • Формат сообщения: идентификатор устройства и тело сообщения

Простой вариант отправки:
Необходимо скачать специальную библиотеку http://code.google.com/p/apns-sharp/ или установить ее через nuget командой: PM> install-package APNS-Sharp

Пример использования библиотеки (ее не использовал, просто нагуглил):
string p12FileName = "C:\apple_ios_certificate.p12"; // путь к сертификату
string p12Password = ""; // пароль сертификата
bool sandBox = true; // отправлять данные в песочницу
int numConnections = 1; // кол-во коннектов
var notificationService = new NotificationService(sandBox, p12FileName, p12Password, numConnections);
var deviceToken = ""; // токен/идентификатор устройства
var notification = new Notification(deviceToken);
notification.Payload.Alert.Body = "Some message";
notification.Payload.Sound = "beep.wav";
notification.Payload.Badge = 1;
if (notificationService.QueueNotification(notification)) {
    // queued the notification
} else {
    // failed to queue
}
// This ensures any queued notifications get sent befor the connections are closed
notificationService.Close();
notificationService.Dispose();

На самом деле свой вариант (по крайней мере для меня) предпочтительнее, т.к. приведенная в примере библиотека притормаживает поток на каждом уведомлении примерно на 100 мс

Список рекомендуемой литературы:

Regex.Timeout / Таймаут исполнения регулярного выражения

В класс .NET 4.5 добавлена веселая возможность - указания таймаута исполнения регулярного выражения
Не думаю, что когда-либо воспользуюсь данной фичей, но ее однозначно стоит иметь ввиду

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

using System;
using System.Reflection;
using System.Text.RegularExpressions;

public class Example
{
   public static void Main()
   {
        // Match two or more occurrences of the same character.
        string pattern = @"(\w)\1+";

        // Use case-insensitive matching. 
        var rci = new RegexCompilationInfo(pattern, RegexOptions.IgnoreCase,
                                           "DuplicateChars", "CustomRegexes", 
                                           true, TimeSpan.FromSeconds(2));

        // Define an assembly to contain the compiled regular expression.
        var an = new AssemblyName();
        an.Name = "RegexLib";
        RegexCompilationInfo[] rciList = { rci };

        // Compile the regular expression and create the assembly.
        Regex.CompileToAssembly(rciList, an);
   }
}


Пример взят со страницы http://msdn.microsoft.com/en-us/library/hh160232(VS.110).aspx

При превышении времени ожидания - бросается исключение RegexMatchTimeoutException

Список методов поддерживающих InfiniteMatchTimeout:

В Firefox 15 появилась удаленная отладка для мобильных устройств


Как известно в Firefox начиная с 10ой версии, появился свой нативный отладчик.
И теперь, вслед за GoogleChrome, в Firefox 15 появится удаленная отладка для мобильных устройств.
Уже есть видео (EN) с демонстрацией настройки и подключения отладчика.
Для этого вам нужно поставить Firefox beta

Все подробности на хабре http://habrahabr.ru/post/149342/

Миграция ASP.NET сайта в облако Windows Azure

В представленном примере используются:

  • Windows 7
  • Visual Studio 2010 SP1
  • Download and install the Windows Azure SDK for .NET
  • SQL Server Express 2008 R2 (This is installed with Visual Studio)

Что будет проделано:

  1. Конвертирование ASP.NET Website project в ASP.NET Web Application project
  2. Добавление Windows Azure Deployment Project к the ASP.NET Web Application
  3. Развертывание Windows Azure
  4. Миграция SQL Server БД в SQL Azure
  5. Конфигурирование Web Application для использования SQL Azure database


Подробности здесь

ASP.NET добавляем к валидируемым контролам класс валидации

Классические валидаторы достаточно удобны, если нам нужно по быстрому повесить проверку по какому-либо условию на то или иное поле данных или просто кастомное условие

Но они не позволяют отметить проверяемые контролы каким-либо классом

Самое простое решение, как оказалось - вызвать клиентскую валидацию "ручками", пройтись по списку валидаторов и в случае невалидности просто добавить класс

Пример кода:

    var val = Page_ClientValidate();
    $(".invalid").removeClass("invalid");
   
if (!val) {         var i = 0;         for (; i < Page_Validators.length; i++)             if (!Page_Validators[i].isvalid)                 $("#" + Page_Validators[i].controltovalidate).parent().addClass("invalid");     }     return val;
P.S.: пример кода взят со страницы  http://stackoverflow.com/questions/2314365/asp-client-side-validation-woes
Рекомендую к ознакомлению страницу http://msdn.microsoft.com/en-us/library/aa338815(VS.71).aspx

has a bad module "ManagedPipelineHandler" in its module list

Смените Pipeline Mode пула приложений:

Коллекция бесплатных электронных книг по технологиям и продуктам Microsoft


Инфа с блога MSDN

Eric Ligman, Директор по работе с партнерами Microsoft, в своем блоге собрал ссылки на большую коллекцию бесплатных электронных книг на английском языке по технологиям и продуктам Microsoft, включающую описание работы с Visual Studio, SQL Server, Microsoft Office, SharePoint, создание приложений для Windows Phone 7 и 8, Windows Azure, ASP.NET MVC и многое, многое другое. С удовольствием представляем ее вам! И – спасибо, Эрик!


Moving to Microsoft Visual Studio 2010
image
Programming Windows 8 Apps

Programming Windows Phone 7
643352_win Phone.indd
Programming Windows Phone 7 (Special Excerpt 2)

Office 365 – Connect and Collaborate virtually anywhere, anytime
9780735693876f
Microsoft Office 2010 First Look

Security and Privacy for Microsoft Office 2010 Users
image
Getting started with
Microsoft Office 2010 – For IT Professionals
image
Planning guide for Microsoft Office 2010 - For IT professionals
image
Deployment guide for Microsoft Office 2010 - For IT professionals
image
Operations guide for Microsoft Office 2010 - For IT professionals
image
Technical reference for Microsoft Office 2010 - For IT professionals

Обновился .NET Reflector

Собственно что нового:

  • Поддержка .NET 4.5
  • Поддержка синтаксиса C# 5
  • Проверка сборки на обфускацию
  • Исправлены некоторые ошибки

Скачать триальную или купить .NET Reflector можно на оф. сайте: http://www.reflector.net/

Бесплатный Windows Azure

Триальный период составляет всего на 90 дней

ЧТО ВЫ ПОЛУЧАЕТЕ КАЖДЫЙ МЕСЯЦ:
750 Часов
Облачные службы
750 часов для мелких вычислительных операций
35 ГБ
Хранилище
35 ГБ с 50 млн транзакций
1 База Данных
База данных SQL
1 база данных выпусков Web Edition и Business Edition
20 ГБ
Передача данных
20 ГБ исходящих транзакций, неограниченный объем входящих транзакций
10
Веб-сайты
Можно продлить до 1 года БЕСПЛАТНО


Все это можно получить на оф. сайте: https://www.windowsazure.com/

Resharper 7 с поддержкой Visual Studio 2012

Вышел новый Resharper 7

Добавлена поддержка:

  • VS 2012
  • .NET 4.5
  • ASP.NET MVC 4
  • Metro Style apps Windows 8
  • LightSwitsh!
  • Sharepoint
И другие вкусняшки, рекомендую просто попробовать

Скачать с оф. сайта http://www.jetbrains.com/resharper/

P.S.: также остаются проблемы с поддержкой проектов типа WebSites, ну да и фиг с ними )

Exchange Web Services Managed API Version 2.0

The Microsoft Exchange Web Services (EWS) Managed API 2.0 Technical Preview provides a managed interface for developing client applications that use Exchange Web Services.

http://www.microsoft.com/en-us/download/details.aspx?id=30391

Как узнать разрядность системы (via .NET)

Пока что у пользователей могут быть лишь 32/64-х разрядные системы, так что можно проверять через свойства: Environment.Is64BitOperatingSystem и Environment.Is64BitProcess

Is64BitOperatingSystem - определяет, является ли текущая операционная система 64-разрядной
Is64BitProcess - определяет, является ли текущий процесс 64-разрядным

Как для Visual Studio 2012 установить английский язык

Все просто - качаем Visual Studio 2012 Language pack желаемого языка со страницы http://www.microsoft.com/visualstudio/11/en-us/downloads#professional и устанавливаем :)

P.S.: нужно не забыть выбрать нужную версию студии

The specified service has been marked for deletion

Полный текст ошибки: Error 1001. The specified service has been marked for deletion


Ошибка возникает при удалении сервиса
Возможные решения:

  1. в командной строке выполнить код: sc delete servicename
  2. выйти из системы и войти вновь, при необходимости выполнить шаг 1
  3. перезагрузить машину и выполнить шаг 1

Deployment guide for MS Sharepoint 2013 Preview / Руководство по развертыванию MS Sharepoint 2013 Preview

Доступно для скачивания руководство по развертыванию Sharepoint 2013 Preview
http://www.microsoft.com/en-us/download/details.aspx?id=30384&WT.mc_id=rss_alldownloads_all
Также стоит отметить, что руководство доступно в форматах doc, pdf, epub, mobi, так что можно спокойно ознакамливаться и с читалки )

Pro C# 5.0 and the .NET 4.5 Framework

Apress сообщает, что выходит новая книга Pro C# 5.0 and the .NET 4.5 Framework
В ней рассмотрены следующие темы:

  • .NET API для Metro-style приложений
  • Managed Extesibility Framework (MEF)
  • Новая асинхронная task-based модель для асинхронных операций
  • How HTML5 support is being wrapped into C# web applications
  • Новые интерфейсы для HTTP приложений, включая поддержку IPv6
  • и т.п.

Подтвердите право собственности на домен

Процедура назначения основного домена предполагает проверку вашего права собственности на домен http://www.domain.com/. Подтвердите право собственности на домен http://www.domain.com/


Такая проблема возникает, в случае, если вы хотите указать основной домен в настройках google webmaster tools
Для разрешения проблемы необходимо добавить оба домена в google webmaster tools и подтвердить право собственности каждого домена

MS SQL: find column references/найти ссылки на столбцы

При необходимости найти все хранимки и вьюхи ссылающиеся на конкретную колонку в конкретной таблице БД MS SQL Management Studio как-то не особо помогает
Как всегда гугл помогает, нашлось несложное решение:

Бесплатная книга по Sharepoint на русском

http://rusug.net/Book/default.aspx

Вырезка:


Книга “SharePoint 2010. Просто для пользователей” – открытая, свободная и динамично развивающаяся книга для пользователей SharePoint 2010.

Книга открытая. Книгу писала группа людей на добровольных началах на условиях Creative Commons. Это люди, которых не гнала палкой работа – они искренне хотели написать книгу и помочь вам. Вы, в свою очередь, можете помочь в создании книги – отправив свои комментарии или полезные материалы для включения в книгу. Мы примем любую помощь – рецензирование, комментирование, поиск ошибок, отдельные материалы и с огромным удовольствием целые главы для включения в книгу.

Книга свободная. Вы вольны ее читать или нет. Мы вольны туда писать все что, как мы надеемся, будет полезно и интересно пользователям SharePoint 2010. Вы можете свободно читать электронную версию книги и делать ее распечатку для индивидуального пользователя. Это уникальная книга по своей доступности.

Книга динамично развивающаяся. Эта книга периодически обновляется – обновления могут выходить несколько раз в месяц. Это отличает ее от многих других книг, которые, в лучшем случае, обновляются раз в год.

Вы ее можете найти:


Тестирование WCF

Для тестирования WCF есть достаточно удобная тулза идущая вместе со студией
Располагается по пути \Microsoft Visual Studio 10.0\Common7\IDE\WcfTestClient.exe

Unable to build custom action named primary output from


Мой полный текст ошибки:

Error 6 Unable to build custom action named 'Primary output from NotificationManager.Services.MessageHandlerService (Active)' because it references an object that has been removed from the project. C:\Users\Pavlov\Documents\Visual Studio 2010\Projects\SSBClient\ServicesSetup\ServicesSetup.vdproj ServicesSetup

Ошибка возникла после удаления и последующего добавления одного из проектов решения в Setup Project

Решение от Microsoft мне не понравилось, т.к. оно носит характер временного решения и это несколько неудобно
Мое решение заключается в том, что я в блокноте удалил ссылки на добавляемую библиотеку из файла проекта ServicesSetup.vdproj, после чего я стандартным образом добавил из студии референс на свой проект и все работает! :)

Не используйте Response.End()


При использовании простого редиректа или с явным вызовом Response.End() влечет за собой ThreadAbortException

Правильный редирект:

Response.Redirect(redirectUrl, false);
HttpContext.Current.ApplicationInstance.CompleteRequest();

project type (.rptproj) is not supported

Нужно установить "Business Intelligence Development Studio" из пакета установки SQL Server 2008

Windows 8 - не работают программы

Обновился я с семерки до Windows 8 и сразу огорчился - дефолтные приложения восьмерки не работают, все до единого

Однозначного решения в сети не нашел (а их куча), но понял, что все завязано на ранее установленном ПО (а оно у меня установилось, и даже все старые дрова, т.к. я только обновлялся до Windows 8)

Решение:
1. Диспетчер задач (CTRL+SHIFT+ESC)
2. Вкладка автозагрузки
3. Выключить все
4. Перезагрузиться
5. Пользоваться приложениями :)

Если что-то из автозагрузки нужно (например мне нужны дрова для тачпада), то лучше запускать поочередно, чтобы наверняка выявить проблемное приложение

Создание логотипа онлайн

Logotype Creator - неплохой сервис, позволяющий создать хоть и рандомный, но все же шаблонный логотип
Необходимо: ввести текст и нажать Enter
Генерируется список логотипов, в первой колонке предоставляются бесплатные варианты, в последующих - платные
Выбрав логотип можно изменить почти все характеристики, а также - добавить еще блок текста


A potentially dangerous Request.Form value was detected from the client...

.NET 4
ValidateRequest="false" ни на странице ни в конфиге не помогало
Решается переопределением режима валидации в файле web.config:

<system.web>
    <httpruntime requestvalidationmode="2.0"></httpruntime>

MVC - порядок полей; MVC - fields order

Если вы используете @Html.DisplayForModel() или @Html.EditorForModel(), то порядок полей строится автоматически, а при использовании иерархии моделей (к примеру, если одна модель наследуется от другой), то родительские поля обязательно выводятся после собственных
Самый простой (а может и правильный?) способ задать порядок полей - использовать свойство Order атрибута DisplayAttribute:

        [Display(Order = 12)]
        public string Skype { get; set; }

Internet Explorer Enhanced Security Configuration must be disabled

Предупреждение Internet Explorer Enhanced Security Configuration must be disabled возникает при попытке использования Page Inspector
Решение:

1. Открыть Server Manager -> Configure IE ESC


2. Собственно - выключить :)

Web Camps Training Kit

Набор презентаций и лабораторных работ по ASP.NET MVC 4:

  1. Custom Action Filters
  2. Dependency Injection
  3. Entity Framework Scaffolding and Migrations
  4. Helpers, Forms and Validation 
  5. Models and Data Access
  6. REST via Web API
  7. VS11 - Page Inspector
  8. Обзор новинок
Лабораторные работы и презентации грузятся через Web Installer
По умолчанию лабораторные работы в директории c:\Users\\Documents\Labs\
Презентации - c:\Users\\Documents\Presentations\
Скрин вебинсталлера

Ссылка на скачивание

Последняя версия jQuery

IdnMapping.GetUnicode

Декодирует одну или несколько меток доменного имени в соответствии со стандартом IDNA в строку символов Юникода.

http://msdn.microsoft.com/ru-ru/library/system.globalization.idnmapping.getunicode(v=vs.100)

Локализация валидации даты MVC 3

Стандартные скрипты никак не хотят валидировать даты вида 10.05.2012 12:43:18
Смотрим файл jquery.validate.js, видим проверку даты:


date: function(value, element) {
       return this.optional(element) || !/Invalid|NaN/.test(new Date(value));
},

Ну.. долго не думая переопределяем функцию валидации даты:
$.validator.methods.date = function (value, element) {
    if (!value)
        return false;

    var splitVal = value.split(' ');

    var date = splitVal[0].split('.');

    var time = (splitVal.length == 2 ? splitVal[1] : '0:0:0').split(':');

    return this.optional(element) || !/Invalid|NaN/.test(new Date(date[2], date[1], date[0], time[0], time[1], time[2], 0));
};
Данный подход не есть супер хорошо, но поскольку я не знаю javascript, то думаю для быстрого фикса проблемы подойдет, тем более что фикс производится в одном месте

CKFinder: Браузер файлов отключен из-за соображений безопасности

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

  1. Находите файл config.ascx
  2. В нем метод CheckAuthentication
  3. Необходимо переопределить возврат false )
    Например мне позволительно разрешить использование всем пользователям:
    return HttpContext.Current.User.Identity.IsAuthenticated;

MVC: A potentially dangerous Request.Form value was detected from the client

Возникает такое исключение при отправке потенциально опасных значений на сервер
Отключать проверку отправляемых данных для приложения в целом не рекомендую
Можно отключить валидацию в конкретном обработчике при помощи атрибута ValidateInput:

        [HttpPost]
        [ValidateInput(false)]
        public ActionResult MyAction...


Javascript: удалить html

"<p class=text>test</p>".replace(/(<([^>]+)>)/ig, "") => test

Русификация GIMP

OS Windows
  1. Свойства системы (правой кнопой по моему компьютеру, свойства)
  2. Advanced System Settings
  3. Advanced
  4. Enviroment Variables
  5. System Variables
  6. New
  7. Ввести: LANG и, в качестве значения, - ru
GIMP можно запускать

Первоисточник

Обработчик "PageHandlerFactory-Integrated" содержит поврежденный модуль "ManagedPipelineHandler"

Я исправил переустановив ASP.NET:
%windir%\Microsoft.NET\Framework64\v4.0.30319>aspnet_regiis.exe -i


Ради интересу погуглил, народ исправляет так:
%windir%\Microsoft.NET\Framework\v4.0.30319\SetupCache\Client\setup.exe /repair /x86 /x64 /ia64 /parameterfolder Client /q /norestart


Полный текст ошибки:
  • HTTP Error 500.21 - Internal Server Error Handler "PageHandlerFactory-Integrated" has a bad module "ManagedPipelineHandler" in its module list.
  • Ошибка HTTP 500.21 - Internal Server Error Обработчик "PageHandlerFactory-Integrated" содержит поврежденный модуль "ManagedPipelineHandler" в списке модулей

jQuery: selector exists / проверка существования селектора


Как бы и так просто, но вынос проверки в отдельную функцию удобнее:
jQuery.fn.exists = function(){return this.length>0;}

if ($(selector).exists()) {
    // Do something
}

HTML Select readonly

У html-тега select нет аттрибута readonly

При необходимости вывести выпадающий список, но при этом не предоставлять пользователю возможности выбора - единственный способ добавить атрибут disabled

Но при использовании этого атрибута данные из select не передаются на сервер, а это может быть необходимым (лично у меня такой задачи не возникало), потому приходится идти на те или иные извращения.

Небольшое решение:
  1. Добавить input type=hidden на страничку, с тем же именем, что должно было быть у селекта
  2. Записать в него ранее выбранное значение в селекте
  3. У селекта прописать disabled
И пользователь не может выбрать значение, и на сервер данные передаются

Также есть вариант удаления этого атрибута перед самой отправкой формы или отказаться от непосредственно формы и отправлять данные через ajax )

Dokuwiki В загрузке отказано. Файлы с таким расширением запрещены

Нужно добавить MIME тип в файл \conf\mime.conf
http://www.dokuwiki.org/ru:mime

Руководство Microsoft по проектированию архитектуры приложений / Application Architecture Guide


Обновленная версия руководства по архитектуре - Microsoft Application Architecture Guide, 2nd Edition (Руководство Microsoft по проектированию архитектуры приложений) увидела свет осенью прошлого года. Во втором издании уделено внимание архитектуре и дизайну программного обеспечения, основам проектирования с развернутыми рекомендациями по проектированию многослойных приложений, слоя предстваления, бизнес-слоя, слоя доступа к данным и слоя сервисов, проектированию компонентов для каждого слоя и ряду других тем. Отдельно обсуждаются типы приложений включая, помимо традиционных, такие типы, как мобильные приложения, сервисные приложения, офисные бизнес-приложения, приложения на SharePoint и сервисы в облаке.

Источник: http://blogs.technet.com/b/isv_team/archive/2010/09/16/3355945.aspx