Сообщения

Отличное решение проблемы "first convert it to a node-set" без использования msxsl:node-set()

Для случая "To use a result tree fragment in a path expression, first convert it to a node-set using the msxsl:node-set() function." представлено отличное решение проблемы без использования  msxsl:node-set() . "get xpath from xsl variable" <xsl:stylesheet version = "1.0"   xmlns:xsl = "http://www.w3.org/1999/XSL/Transform" >   <xsl:output method = "text" />       <xsl:variable name = "myVar" >         <RefData RefTag = "test1" bbb = "false" />         <RefData RefTag = "test2" bbb = "false" />         <RefData RefTag = "test3" bbb = "false" />         <RefData RefTag = "test4" bbb = "true"   />         <RefData RefTag = "test5" bbb = "false" />         <RefData RefTag = "test6" bbb = "false" />     </xsl:variable>       ...

Аналог оператора ?? в XPath

Как вариант для дальнейшего развития: Запись в XPath ( someNode[@key = $key] | otherNode[@key = $key] ) [1] Запись в C# int y = xNullable ?? -1;

Управление разбивкой и переносами блоков в XSL

Речь идет о XSL, ранее XSL-FO или просто FO. Сценарии: Запретить перенос блока Заставить блок переноситься обязательно и т.д. Напоминалочка. Чтоб управлять такими вещами нужно изучить атрибуты "keep-..." и "break-...". См.  Keeps and Breaks Properties

Коллизия нотации "(function)();" в JavaScript или почему JavaScript разработчик будет ставить точку с запятой перед (function)();

Нотацию (function)(); в JavaScript всегда надо начинать с точки с запятой. Это защитит от трудно определимой ошибки в интерпретации кода JavaScript-движком. Нотация ( function )(); в JavaScript чаще всего применяется в следующих случаях: когда вы хотите ограничить видимость локальных переменный и поиграть с замыканиями (closures), при этом вызывая немедленное выполнение. когда в проекте используется несколько JavaScript фреймворков и они бодаются за переменную по имени $. Эта нотация помогает гарантированно использовать переменную $, независимо от будущих изменений на сайте. Пример: ;( function ($) { /* do something*/ } )( jQuery ); Ниже код, объясняющий почему нужно использовать точку с запятой вначале. function f1(inp) { alert("f1 - " + inp); } // Ошибки не будет, все в порядке. var f2 = function (inp) { alert("f2 - " + inp); } ; (f1)("2"); // Если следующую строку не завершить точкой с запятой, будет ошибка. var f3 = function (in...

Отличие создания свойств объекта в конструкторе и через прототип конструктора в JavaScript.

Свойства, задаваемые в конструкторе, нельзя подменять через прототип. Т.е. свойство задаваемое в конструкторе скрывает одноименное свойство в прототипе. Например, для конструктора function c() { this.a = "a"; } запись c.prototype.a = "a2"; не имеет смысла (если не обращаться из объекта реализации напрямую, например myObj.constructor.prototype.a ) . Далее JavaScript код для просмотра в дебаггинге. Здесь метод  assert никогда не будет выполнен . var assert = function (res) { if (res !== true) alert("false"); } function c() { this.a = "a"; } c.prototype.b = "b"; var t1 = new c(); c.prototype.a = "a2"; c.prototype.b = "b2"; var t2 = new c(); assert(t1.a == t2.a); assert(t1.a == "a"); assert(t1.b == t2.b); assert(t1.b == "b2");

URLScan : Unable to start debugging on the web server. The web server could not find the requested resource.

Еще один сюрприз на эту тему, теперь для тех, у кого чешутся руки. Причина проблемы Есть такое средство Microsoft Web Platform Installer и решили вы им доустановить что-то новенькое. Одни из компонентов который вы выбрали был URLScan. Вы даже не почитали, для чего он нужен. :) Установка средства URLScan убивает дебаггинг сайтов на сервере IIS. И, видимо, еще много чего может убить по умолчанию. Не ставьте его на разработческие машины! Что такое URLScan URLScan это всего лишь ISAPI-фильтр (Internet Server API filter), который посажен на инсталлятор, и который слушает и фильтрует входящие на IIS запросы. "UrlScan 3.1 is a security tool that restricts the types of HTTP requests that IIS will process. By blocking specific HTTP requests, the UrlScan 3.1 security tool helps to prevent potentially harmful requests from reaching applications on the server. UrlScan 3.1 is an update to UrlScan 2.5 supports IIS 5.1, IIS 6.0 and IIS 7.0 on Windows Vista and Windows Server ...

Что такое ASP.NET Web Pages

Что такое " ASP.NET Web Pages ", как я вижу. Это новый стиль создания сайтов в ASP.NET максимально приближенный к статическим страницам. В ASP.NET есть основные подходы Forms, MVC, а теперь еще Web Pages. * В ASP.NET легко писать и на низком уровне без использования любого из подходов. * Главная идея в Web Pages - легко начать с нуля, изучая полезности ASP.NET только по необходимости. Можно начать разрабатывать без установки Visual Studio, при помощи облегченного средства WebMatrix. В Web Pages, как и в MVC, предполагается активное использование Razor. Razor, это вставка динамического содержимого прямо в разметку HTML страницы. Такое было изначально в ASP.NET, но Razor предложил компактную, не загрязняющую HTML форму написания, которая сразу всем полюбилась. Пример Razor на картинках и сравнение со стандартными вставками здесь -  http://weblogs.asp.net/scottgu/archive/2010/07/02/introducing-razor.aspx Все нужное для начала работы найдется на странице ...