Как стать автором
Обновить
108.57

.NET *

Хаб со знаниями про .NET

Сначала показывать
Порог рейтинга
Уровень сложности

ASP.NET AJAX 4.0 CodePlex Preview 1

Время на прочтение1 мин
Количество просмотров894
Стал доступен (для целей тестирования) прототип будущего ASP.NET AJAX 4.0 про который писалось тут.

www.codeplex.com/aspnet/Release/ProjectReleases.aspx?ReleaseId=15511

Из интересного в данном релизе отмечаются:
* Client-side template rendering
* Declarative instantiation of behaviors and controls
* DataView control
* Markup extensions
* Bindings

Обещается поддержка следующих браузеров:
* Internet Explorer 7.0.5730
* Firefox 2.0.0.16 and 3.0
* Safari 3.1.2
* Opera 9.51

PS:
на самом деле, архив содержит два js-скрипта (релиз- и дебаг-версии MicrosoftAjaxTemplates.js), для использования которых необходимо включить их в код страницы.
PPS:
Первый пример с новыми фичами уже можно заценить здесь

Завершение поддержки .Net Framework 1.1

Время на прочтение1 мин
Количество просмотров571
Согласно жизненному циклу представленному Микрософт по адресу:

support.microsoft.com/lifecycle/?LN=en-us&x=6&y=12&p1=1249

.Net Framework версии 1.1 более не будет поддерживаться после 14 октября 2008 года, что можно считать формальной датой «смерти» первого фреймворка. По моему, это значимая дата, отметка в истории .net-разработки. И хотя сейчас трудно найти мелкие и средние развивающиеся проекты на .net 1.1, все равно они существуют и, наверняка, их еще больше в сегменте крупных проектов. Для совсем крупных партнеров Микрософт существует расширенная программа поддержки, которая продлится до, ни много ни мало, 2013 года.

PS:
Напомню, последней версией .Net Framework недавно стала 3.5 sp1.

Анонимные типы за пределами функции

Время на прочтение2 мин
Количество просмотров12K
Анонимные типы — очень приятное расширение C#, появившееся в версии 3.0. С помощью анонимных типов мы можем налету создать объект-хранилище и наполнить его данными.
Основное применение анонимных типов — это, конечно, LINQ. Фактически, они и были созданы для него (вообще говоря, все нововведения C# 3.0 были сделаны для LINQ, за исключением, пожалуй, частичных методов).
var o = new {Bar=2, Foo="string"};

Читать дальше →

Определение причины закрытия приложения Windows Forms (.Net)

Время на прочтение2 мин
Количество просмотров4.4K

Предпосылки к написанию статьи


Я работал над одним приложением и мой клиент захотел, чтобы оно реагировало на завершение работы системы. Я вспомнил, что многие приложения производили некоторые действия при закрытии, но я редко встречал программу, которая различала бы способ её закрытия — пользователем или системой. И я подумал, почему бы не показать людям, что можно кое-что изменить в дизайне приложения.
Читать дальше →

asp.net: ListView с разных сторон

Время на прочтение7 мин
Количество просмотров16K
Элемент управления ListView был представлен в .Net Framework 3.5 как замена устаревшему GridView. Новый элемент имеет более расширенный функционал, чем его предшественник, но в тоже время лишен некоторых внутренних механизмов, что впрочем целиком следствие из расширенной универсальности ListView. Среди отличий ListView и GridView можно назвать и гибкую настройку разметки, что позволяет выводить данные не только в табличном виде, но и вообще в любом каком пожелает программист. Благодаря шаблонам ItemTemplate, EditItemTemplate, InsertItemTeplate можно настроить внешний вид при любом из состояний ListView: редактировании или выборе элемента.

Я решил написать эту статью, чтобы поделиться опытом работы с ListView, привести некоторые способы решения общих задач, а также описать проблемы с которыми я столкнулся и которые у меня получилось решить не слишком красиво. Возможно, что при обсуждении статьи найдутся более гибкие решения описанных задач, чему я буду только рад.
Читать дальше →

Замыкания в C#

Время на прочтение2 мин
Количество просмотров64K
Перед прочтением статьи, ответьте на следующий вопрос — что будет напечатано, после исполнения следующего кода?

P p = Console.WriteLine; // P объявлен как delegate void P();
foreach (var i in new [] { 1, 2, 3, 4 }) {
  p += () => Console.Write(i);
}
p();
Элементарно?

Visual Studio Gallery

Время на прочтение1 мин
Количество просмотров942
Не обнаружил на Хабре описания полезного сайта. Собственно, решил поделиться с коллегами информацией и выслушать мнения о нём. В рамках превращения Visual Studio из среды разработки в целую платформу, Microsoft ещё полгода назад (27 февраля 2008) открыла сайт, посвященный всякого рода дополнениями и расширениями к Visual Studio. В сумме с репозиторием CodePlex получается довольно неплохо;)

CAPTCHA для Вашего сайта

Время на прочтение2 мин
Количество просмотров18K
Сегодня я расскажу о том, как можно быстро и легко прикрутить проверку CAPTCHA на Ваш сайт.


Для тех, кто не в курсе, CAPTCHA это автоматизированный тест Тьюринга для различения компьютеров и людей. Подробнее о том, что такое CAPTCHA можно почитать на википедии.


В данном примере я воспользовался бесплатным сервисом recaptcha.net. Вам придется пройти регистрацию, чтобы работать с ним, ибо понадобятся Public и Private ключи.


Читать дальше →

Windows mobile: один экземпляр приложения

Время на прочтение2 мин
Количество просмотров1.5K

Проблема


Работая над windows mobile проектом (Visual Studio 2008, .net cf 3.5, C#) столкнулся с проблемой контроля запуска одного экземпляра приложения. К сожалению создатели .net compact framework 3.5 (и ранних версий) не включили возможность поиска процесса по его имени — метод System.Diagnostics.Process.GetProcessesByName(). Дополнительных методов, которые с помощью управляемого кода помогли бы решить проблему, обнаружено не было.
решение...

ASP.NET: расширяем механизм путей SiteMapPath

Время на прочтение3 мин
Количество просмотров2.1K
При разработке на ASP.NET мы привыкли для стандартных задач использовать стандартные компоненты. Одной из таких стандартных задач является вывод на каждой странице сайта пути к ней от главной страницы — фрагмента карты сайта (sitemap path). Для этого используется контрол SiteMapPath, берущий данные о карте сайта от провайдера карты сайта (SiteMapProvider) по умолчанию, который, в свою очередь, берет их из конфигурационного файла Web.siteMap.

Поместив этот контрол на мастер-страницу сайта, и описав в конфигурационном файле карту сайта, мы тем самым обеспечиваем вывод пути на всех страницах.

Но ASP.NET — расширяемая среда, и позволяет замещать почти все стандартные модули, и провайдер карт сайта — не исключение. Мы рассмотрим, как создать свой провайдер для получения расширенной функциональности для карты сайта.

Читать про SiteMapPath с динамическим содержимым

Active Directory Sync

Время на прочтение6 мин
Количество просмотров5.8K
По долгу службы пришлось разбираться с Active Directory. Пришлось почитать, поэкспериментировать с классами, но всё в результате заработало превосходно.

В первую очередь хотелось бы описать немного Directory Synchronization объект, который появился в .net framework 2.0. О нём, и о других преимуществах 2го framework вы сможете почитать на сайте microsoft (http://msdn.microsoft.com/en-us/magazine/cc188700.aspx ). Лично мне статья помогла разобраться, хотя я обилия информации в сети на предмет dyrSync нет.
Читать дальше →

ASP.NET MVC на реальном примере. Теория и вступление.

Время на прочтение9 мин
Количество просмотров65K
Команда Microsoft очень интенсивно развивает свои продукты и средства для разработчиков. На эту тему уже и выхлопы шуточные были, по поводу выхода новых версий фреймворков. Разработчики, которые работают в крупных компаниях, ввязаны в большие проекты в общем-то без особого энтузиазма на это смотрят, так как такие махины нельзя в короткие сроки перевести на новую версию. Может быть чревато как всплыванием багов, так и изменением всей структуры проекта, что делать не всегда получается легко. Сказанное выше, к сожалению (или к счастью), меня не касается и это дает мне возможность использовать все самое новое без оглядки на бекграунд. Проекты довольно таки обозримые, часто переводятся на новую версию безболезненно, и новые фичи начинаю внедрять уже при реализации следующей задачи в пректе. На момент внедрения это, конечно, вносит некий хаос в код, так как в разных кусках кода используются разные принципы (например, внедрение LINQ), но последующий рефакторинг кода приводит все к единому виду и все приходит в норму.

К чему все это?


Одним из таких нововведений является ASP.NET MVC — реализация шаблона Model-View-Controller под платформу .NET. Попробуем разобраться что же это такое, зачем нужно, и применим наши знания на простом, но реальном приложении.
Приступим

Средства коллективной разработки.

Время на прочтение1 мин
Количество просмотров6.8K
Всем хорошего вечера понедельника (если такое возможно). Хочу спросить у тех кто пишет под .NET платформу, какие средства коллективной разработки они используют? Понятно что есть VS Team systems. Все ли используют его? Может кто-то пользуется чем нить альтернативным? Чем-то полегче?

Ближайшие события

ASP.NET AJAX Roadmap

Время на прочтение1 мин
Количество просмотров1K
Возможно, многим будет интересно, что можно ожидать в будущем от ASP.NET AJAX. К счастью, разработчики asp.net поделились с нами своими планами выпустив ASP.NET AJAX Roadmap.

Из интересного можно отметить большое движение в сторону клиентских технологий и введение механизмов легкой манипуляции DOM-объектами через селекторы вроде такого $query(“input[type=text][value~=foo]”). Надеюсь, у Микрософт получится удачный конкурент jQuery, может быть не такой маленький, но не менее функциональный и для asp.net родной.

Еще вроде бы обещают клиентские элементы управления вроде таблиц, treeview и даже Rich text editor.

В целом, впечатления от роадмапа положительные. AJAX от Microsoft развивается, и планы развития мне по душе.

WPF Datagrid от XcEEED

Время на прочтение1 мин
Количество просмотров9.3K
Хочу поделиться приятной находкой, с теми, кто юзает WPF. Готовый DataGrid, бесплатный, для версии с ограниченными возможностями.
Читать дальше →

Внедряем Health Monitoring System в любое ASP.NET приложение за минуту

Время на прочтение3 мин
Количество просмотров5.2K
Сегодня мы рассмотрим очень интересную и полезную штуку, которую можно внедрить всего за минуту в любое ASP.NET приложение, изменив один файл.
Для начала попытаюсь дать определение Health Monitoring System(далее HMS).
HMS — это модуль, который будет следить за вашим сайтом и реагировать на определенные события. В этой статье мы займемся реализацией конкретного случая: нам на почту будут приходить письма с различной информацией при возникновении критических ошибок.
Читать дальше →

Внедряем Health Monitoring System в любое ASP.NET приложение за минуту

Время на прочтение3 мин
Количество просмотров1K
Сегодня мы рассмотрим очень интересную и полезную штуку, которую можно внедрить всего за минуту в любое ASP.NET приложение, изменив один файл.
Для начала попытаюсь дать определение Health Monitoring System(далее HMS).
HMS — это модуль, который будет следить за вашим сайтом и реагировать на определенные события. В этой статье мы займемся реализацией конкретного случая: нам на почту будут приходить письма с различной информацией при возникновении критических ошибок.
Читать дальше →

XmlSerializer — Assembly Leak без спроса :)

Время на прочтение5 мин
Количество просмотров5.9K

Коротко о главном


В некоторых частях .NET Framework, таких как XmlSerializer, используется внутреннее динамическое создание кода.XmlSerializer создает временные файлы C#, компилирует результирующие файлы во временную сборку и затем загружает эту сборку в процесс. Такое создание кода тоже стоит сравнительно дорого, поэтому XmlSerializer размещает временные сборки в кэш, по одной на каждый тип. Это значит, что в следующий раз при создании кода XmlSerializer для класса Х не будет создаваться новая сборка, а будет использована сборка из кэша. Однако, не все так просто.
В некоторых случаях происходят утечки сборок...

asp.net: Trace — полезная фича

Время на прочтение1 мин
Количество просмотров1.8K
Не сказал бы что мало программирую на asp.net или плохо его знаю, но вот с этой его фичей познакомился только сегодня.
<%@ Page Trace=«true» %>* This source code was highlighted with Source Code Highlighter.

Читать дальше →

Сам себе RSS ридер

Время на прочтение12 мин
Количество просмотров14K
Однажды, в середине 5-го курса, попросила меня одногрупница помочь ей с лабами по
C#, так как его она только изучала. Узнав задание – «написать RSS ридер» — и оценив
ситуацию – конец семестра – я решил ей помочь, так как RSS ридер нужен был самому.

Читать дальше →