Two datasets inside a same tablix. 9 интересностей и полезностей для веб-разработчика. Всем доброго времени суток. Как-то так получилось, за последнее время я увидел много интересных и полезных инструментов/библиотек/событий, которыми я хотел поделиться на Хабре. Все эти темы по отдельности, на мой взгляд, не заслуживали целой статьи. Но каждая из них достойна внимания и может кому нибудь пригодиться. В итоге получился небольшой дайджест: Prepros Великолепное приложение препроцессор для CSS, JS. Компилирует файлы следующих типов: LESS, Sass, SCSS, Stylus, Jade, Slim, Coffeescript, LiveScript, Haml. Dimensionsapp Говоря о тестировании отображения веб приложений на разных экранах, хочется сказать про онлайн сервис Dimensionsapp. Brackets Open source редактор от Adobe написанный на JavaScript специально для веб-разработчиков. VerbalExpressions Кто не любит писать регулярные выражения? Библиотека также существует для: Ruby, C#, Python, Java, Groovy, PHP, Haskell, C++, Objective-C.GitHub HTML.js GitHub LiveScript А вот сколько бы нам с Вами понадобилось JS кода git-html5.js Infogram.
Панель мониторинга. Huge collection of Free Microsoft eBooks for you, including: Office, Office 365, SharePoint, SQL Server, System Center, Visual Studio, Web Development, Windows, Windows Azure, and Windows Server - Microsoft Sales Excellence Program Manager - Eric Ligman. Last summer I put up a post that offered a collection of free Microsoft eBooks across a variety of topics and the response was incredible. Because of the phenomenal response, I followed it up with a second post that contained another set of free eBooks for people to download. After these posts went live, over 1,000,000 free eBooks were downloaded by people around the world! UPDATE: We’ve surpassed 3.5 MILLION downloads! (Click to read more) Well, I thought I would once again put together another new collection of absolutely FREE Microsoft eBooks for all of you to access and download to use in your quest for information, resources, knowledge, etc. I hope you find these resources to be helpful in learning about and using the various solutions and technologies referenced.
Did you find this information helpful? By the way, another great place to find free books is the Free eBooks Twitter account here at Microsoft: @MSFreeEBooks. Thanks again for being a reader of my blog! Совершенный код и реальные проекты. У меня есть проблема — я перфекционист. Я люблю совершенный код. Ведь это не только правильный подход к написанию программ, но и настоящее искусство. От чтения хорошего листинга я получаю не меньше удовольствия, чем от чтения хорошей книги. Проектировать архитектуру большого проекта ничуть не легче, чем проектировать архитектуру большого здания, а в случае хорошей работы — результат не менее прекрасен. Порой меня завораживает то, как изящно переплелись паттерны проектирования в создании совершенной программной системы.
Но, увы, всё это великолепие разбивается о суровую действительность и реальные проекты. Есть и другая проблема — некоторые программисты не настолько хороши, как им кажется. Но вернёмся к обсуждению совершенного кода. Маленькие проекты Например, имеется 1 человек, который пишет проект несколько дней. Средние проекты Допустим, у нас уже 5-6 человек и проект на несколько месяцев. Большие проекты А теперь у нас несколько десятков человек, а проект будет писаться несколько лет. Нужны ли в JavaScript классы? JavaScript принято считать прототип-ориентированным языком программирования.
Но, как ни странно, этим подходом практически никто не пользуется: большинство популярных JS-фреймворков явно или неявно оперируют классами. В этой статье я хочу рассказать об альтернативном способе программирования на JavaScript, без использования классов и конструкторов — чистым прототипным ООП и особенностях его реализации на ECMA Script 5. ООП можно разделить на две группы: класс-ориентированное (классическое) и прототип-ориентированное. Классический подход отражает взгляд Аристотеля на мир, в котором всё описывается идеальными понятиями.
Прототипное ООП ближе к философии Людвига Витгенштейна, которая не полагается на строгую категоризацию и классификацию всего и вся, а пытается представить понятия предметной области материальными и интуитивно понятными (насколько это возможно). Классы В JavaScript нет классов, скажете вы. Как известно, в ЕСМА Script 6 возможно таки введут ключевое слово class: Прототипы. Система управления данными на базе ASP.NET Dynamic Data. Концепция Я работаю с ASP.NET достаточно давно. При разработке многих проектов я часто сталкивался с тем, что однотипные операции по управлению данными занимают слишком много времени. Естественно для сайтов существуют CMS системы, а для более сложных систем различные генераторы шаблонных страниц, которые создают заготовки для форм редактирования и просмотра информации. Но мне хотелось получить более универсальный инструмент, который в тоже время не накладывал бы ограничений на процесс построения архитектуры приложения.
Исследовав то, что существовало на тот момент для .NET платформы я остановил свой выбор системе ASP.NET Dynamic Data. Это достигается за счет того, что интеграция происходит на уровне СУБД, а не на уровне модулей системы: Такой подход позволяет достаточно быстро получить готовый инструментарий для управления данными и при этом не накладыват архитектурных ограничений на основное приложение. Технологии и компоненты использующиеся в проекте Инструмент генерации метаданных. ASP.NET SignalR. CSS Button Generator - Imageless css buttons simplified. Disabling JIT optimizations while debugging - jaredpar's WebLog. Problem debugging .NET code with MS's Symbol Server.
.net - Debug Microsoft SharePoint code - disable optimization. C# - Cannot obtain value of local or argument as it is not available at this instruction pointer, possibly because it has been optimized away. Web Essentials 2012 extension. Dropping support for TypeScript (without plastering that "little" detail all over the download page) has just cost me 4 wasted hours and sent me full circle back to the old Web Essentials. 1. Installed Web essential update- lost TypeScript support 2. Installed separate TypeScript add-in from MS- Does not build existing TypeScript files in project 3. Researched how to modify project to get it to build TypeScript files- Still does not build existing TypeScript files in project 4. 5. 6. 7. 8. I have never had so much grief from one update. SPC Logging Guide. Для чего нужны шаблоны проектирования. Все чаще и чаще я слышу от разработчиков и читаю в статьях, что шаблоны проектирования (они же дизайн-паттерны) никому не нужны.
Мол, они появились во времена «цветения» UML, RUP, CASE систем и прочих чересчур «сложных» инструментов, подходов и практик. А сейчас самое важное — это код рабочий написать, да побыстрее. На умные толстые книжки ни у кого нет времени, разве что для прохождения собеседования. Тех, кто хочет обсудить данную тему, прошу под кат. Немного воспоминаний из молодости Когда я учился в университете, нам преподавали в рамках одного из курсов шаблоны проектирования. Но ведь совсем не глупые люди придумали шаблоны проектирования: Дальше продолжать исторические хроники смысла нет. Через некоторое время работы я начал замечать, что даже теоретические знания шаблонов проектирования помогают мне понять чужой код гораздо быстрее. Я осознал, как много времени я экономлю, применяя свои скудные книжные знания шаблонов проектирования и даже в душе зауважал их авторов. Заключение. SPC Logging Guide.
Html - Select dropdown with fixed width cutting off content in IE. Fix Mysterious 403 Forbidden error on SharePoint anonymous sites. While there're possibly many other permission related causes for the HTTP Status Code 403 Firbidden error on SharePoint anonymous sites, one in particular is very elusive and puzzling. If a page access terms from the metadata store, e.g. trying to get the Label of a TaxonomyFieldValue off a list item, it results in the 403 error. The problem, as many people have pointed out, is that every site collection stores the metadata in its own hidden list called "TaxonomyHiddenList". It's at However, something's missing but the UI's not showing. By simply click the OK button on the page above, it fixes the 403 erorr on pages that access the metadata in the site collection. So what does clicking the OK button actually do? Behind the scene, the Anonymous Access of the list has only one permission: ViewListItems.
In addition to manually click the OK button to fix the problem for a site collection, the following code snippet can fix the problem in the code: Http status code 403 - Strange Sharepoint 403 error. Параллельная обработка IEnumerable в .NET. В предложенной статье рассматривается решение задачи параллельной синхронной обработки IEnumerable, а также откуда такая задача вообще взялась. Как и во многих других случаях, представленное решение началось со вполне конкретных потребностей. В одном из внутренних проектов есть необходимость построения развесистого отчёта на 100+ срезов по массиву данных, чтение которого занимает более 12 часов. Сами объёмы данных тоже немаленькие. Совокупность продолжительного чтения и огромных объёмов данных (~1.5M кортежей, каждый из которых «весит» до 50 МБ) вносит в код два ограничения: крайняя нежелательность многократного чтения (50 дней на еженедельный отчёт никто тратить, увы, не готов) и техническая невозможность помещения всей выборки в оперативную память.
Предшествовавший мне процесс разработки шёл, очевидно, итеративно: длина метода, агрегирующего данные для срезов составляла около 4000 строк. Передо мной была поставлена задача сделать так, чтобы данный код превратился в поддерживаемый. SharePoint Lookup field: how does it work and how to add JavaScript event handler function to it? | SharePoint. Due to a lot of comments and questions to my last year’s post about Attaching functions to SharePoint form fields concerning especially lookup fields on which the demo was made, I’ve decided to take a deeper dive into SharePoint’s Lookup Field and how to manipulate it client-side, since it behaves different in different situations. On the image below you can see two lookup fields – rendered different. Even though new SharePoint is about to go public beta I’ll still show how to handle this in SharePoint 3.0 or 2007 How does it work?
Before explaining how to attach a functon or event handler to a SharePoint lookup field let’s take a look on how SharePoint lookup field is rendered in HTML and which is its behavior – considering client-side. Lookup to a list with less than 20 items: If your lookup field is reading from a list that has 19 or less items, the lookup field is rendered like a normal HTML dropdown field (HTML <SELECT> tag). The options in the select tag present possible choices. How to close a multi-threaded .NET Windows Forms application and prevent the ObjectDisposedException from getting thrown. Assumptions Knowledge of .NET Windows Forms event handling and threading is assumed, including the use of the lock statement, and how to invoke events onto a GUI thread. Overview This article explains how to properly close a multi-threaded .NET Windows Forms application where there is a thread running in the background that fires events which update or modify the GUI.
The main problem that can arise if such an application is not closed down properly (via code) is that an ObjectDisposedException may get thrown with the message, "Cannot access a disposed object". This error occurs because the GUI gets disposed of first before the background thread has a chance to close, causing an event to get fired which tries to update the disposed object. The key things leading to the problem are the GUI getting disposed of first before the background thread, and the background thread firing events that update the GUI. The following is a diagram of what the problem looks like: Problem Solution.
Уроки написания утилитки на $1 000 000. Осенью 2008 года мы с приятелем потратили две-три недели свободного от основной работы времени, чтобы написать маленькую утилитку для бэкапа баз данных (MS SQL Server и потом MySQL). Сегодня она приносит нам около $230 000 в год и можно с уверенностью говорить, что суммарно мы заработаем на ней больше $1 000 000. Под катом я расскажу, как это получилось и какие уроки мы из этого извлекли. Вполне возможно, что нам просто глупо повезло и опыт этот целиком неверен и теории не соответствует и только навредит вашему начинанию — читайте на свой страх и риск. Начало А началось все с неудовлетворенной потребности. Интерфейс Стратегию определили так: делать все просто, чтобы даже начинающий пользователь смог в минимум кликов получить результат. Урок 1 (он же главный): Найдите наикратчайший из способов удовлетворить потребность и не напрягайте пользователей деталями.
Нам через день предлагают добавить ту или иную фишку. Вот как мы расправились с некоторыми из сложностей: Деньги Пиратство и жадность. Securing Communications with SSL and the .NET Compact Framework. Netscape developed SSL in 1994 as a result of the growing concern about security on the Internet. SSL was later converted to a standard called Transport Layer Security (TLS).
Devices running Windows Mobile Professional and Windows Mobile Standard support SSL version 2.0, SSL version 3.0, and SSL version 3.1. SSL version 3.1 is most commonly known as TLS version 1.0 (RFC 2246). The primary use of the technology was (and still is) to secure the communication between a browser and a Web server (by using HTTP), which also is the focus of this article, but this primary use has been combined with many other technologies for email messages (SMTP), file transfers (FTP), newsgroups (NNTP), and so on. Today, SSL is an accepted standard that is endorsed by the major credit card companies (such as Visa, MasterCard, and American Express) and many other leading financial institutions. The following is a high-level description about how SSL works: A certificate is data that represent a user's identity. Visual-studio-sharepoint-project-template - Visual Studio Project Template for SharePoint 2010.
SharePoint Project Template is a predefined solution template for C# and VB with general classes and API's which is used in SharePoint projects which can save developer's effort to create solutions, writing base functionality and common methods Who benefits from using SharePoint Project Template? Using SharePoint Project Template benefits all of the following: SharePoint Application Developers – Application developers can create predefined SharePoint solution in seconds.
They will get already implemented exception class, logging, error capturing control, common method etc. What features does SharePoint Project Template? SharePoint Project Template provides following functional features: Separation of Projects in term of UI, Common, TimerJobs, EventHandlers, Operations, Exceptions Predefined Timer Job code Predefined Eventhandler code Predefined Exception class code Predefined SharePoint Operation code Predefined Error capturing code Predefined Exception class code Setup Guide Getting Started.
Немного об интерфейсах в .Net (по мотивам одного интервью) В прошедний понедельник мне посчастливилось попасть на собеседование на Senior .Net Developer в одну международную компанию. Во время собеседования мне предложили пройти тест, где ряд вопросов был связан с .Net. В частности в одном из вопросов надо было дать оценку (истина/ложь) ряду утверждений, среди которых было и такое: В .Net любой массив элементов, например int[], по умолчанию реализует IList, что позволяет использовать его в качестве коллекции в операторе foreach. Быстро ответив на этот вопрос отрицательно и отдельно дописав на полях. что для foreach необходима реализация не IList, а IEnumerable, я перешел к следующему вопросу.
Однако по дороге домой меня мучал вопрос: реализует ли массив все-таки этот интерфейс или нет? Про IList я смутно помнил, что этот интерфейс дает мне IEnumerable, индексатор и свойство Count, содержащее число элементов коллекции, а также еще пару редко используемых свойств, типа IsFixedCollection(). Класс System.Array Зачем нужна явная реализация интерфейсов. CSS Reference. CustomSortOrder in SharePoint 2010 TermSets | Andrea Ramacciotti Blog's. Ewen's Files, Ewen Elder; jQuery JavaScript PHP CSS xHTML MySQL Developer. Asp.net - Javascript before asp:ButtonField click. TypeScript: язык для разработки больших приложений на JavaScript. Восстановление расфокусированных и смазанных изображений. Повышаем качество. Как два программиста хлеб пекли. Generate SharePoint project constants with T4 by feature definitions « butaji.
Реализация паттерна UniqueURLs в SharePoint. Code Generator From Xml Fields Defenition. Локализация SharePoint: кодогенерация ресурсных классов. User Attributes - Inside Active Directory. ASP.NET tips: Golden rules for Dynamic Controls. Mplete Lifecycle of an ASP.Net page and controls | Tim | Tim Gaunt. Camlex.NET - View Discussion. Обзор паттернов проектирования. Visual Studio Tip: Get Public Key Token for a Strong Named Assembly - Jeremiah Clark's Blog.
Cyclomatic and Maintenance Complexity using CodeRush per Mark Miller. The 'System.Web.Security.SqlMembershipProvider' requires a database schema compatible with schema version '1'. BlogEngine.NET - View Discussion. BlogEngine.NET - View Discussion.
MVC. Javascript. Sql. Sharepoint.