
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru" lang="ru">
<head>
<meta name="keywords" content="" /> 
<meta name="description" content="" />
<meta name="WT.z_bdb" content="1" /><meta name="WT.sp" content="_gotdotnet_ru_" />
	<script type="text/javascript">
var bitrixThemePath = '/bitrix/themes/.default/';
function getBitrixFilterStylePropertyForIe(fileName){ return "progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled=true, sizingMethod=scale, src='" + bitrixThemePath + "public/components/panel/" + fileName + "') !important";}</script>

	<link rel="stylesheet" type="text/css" href="/bitrix/components/bitrix/blog/templates/.default/style.css?t=634257701973441292" />
	<link rel="stylesheet" type="text/css" href="/bitrix/templates/gotdotnet/blog/style.css?t=633975868769324700" />
	<link rel="wlwmanifest" type="application/wlwmanifest+xml" href="/blogs/tk/wlwmanifest.xml" />
	<link rel="alternate" type="application/rss+xml" href="/blogs/tk/rss/" title="TK's Blog" />
	<link rel="stylesheet" type="text/css" href="/bitrix/templates/gotdotnet/styles.css?t=634426968426881999" />
	<link rel="stylesheet" type="text/css" href="/bitrix/templates/gotdotnet/template_styles.css?t=634426968426881999" />
<title>
	TK's Blog / GotDotNet.Ru
</title><link rel="shortcut icon" type="image/x-icon" href="/favicon.ico" /><link rel="stylesheet" type="text/css" media="print" href="/bitrix/templates/gotdotnet/print.css" /><link rel="alternate stylesheet" type="text/css" media="screen,projection" href="/bitrix/templates/gotdotnet/print.css" title="print" /><link rel="alternate" type="application/rss+xml" href="/rss/" title="GotDotNet.Ru: основная лента" /><link rel="alternate" type="application/rss+xml" href="/articles/rss/" title="GotDotNet.Ru: новые статьи" /><link rel="alternate" type="application/rss+xml" href="/files/rss/" title="GotDotNet.Ru: новые файлы" /><link rel="alternate" type="application/rss+xml" href="/job/rss/" title="GotDotNet.Ru: новые вакансии" /><link rel="alternate" type="application/rss+xml" href="/files/rss/" title="GotDotNet.Ru: новые резюме" /><link rel="alternate" type="application/rss+xml" href="/forums/rss/topics/" title="GotDotNet.Ru: новые темы форумов" /><link rel="stylesheet" type="text/css" href="/lib/sh/shCore.css" />
<script src="/lib/sh/shCore.compressed.js" type="text/javascript"></script>
</head>
<body>
<form name="aspnetForm" method="post" action="/blogs/tk/" id="aspnetForm" class="main-form">
<div>
<input type="hidden" name="bitrix_show_mode" id="bitrix_show_mode" value="view" />
<input type="hidden" name="__VIEWSTATE" id="__VIEWSTATE" value="/wEPDwUHMjAxNDUyOA9kFgJmD2QWAgIBD2QWAmYPZBYCAgEPFgIeBXN0eWxlBSd3aWR0aDowcHg7IGhlaWdodDowcHg7IG92ZXJmbG93OmhpZGRlbjtkZEdoiohaqAXHn6a9A1HjTapLg4AO" />
</div>


<script type="text/javascript">
//<![CDATA[
var dotNetVars = {'ADMIN_THEME_ID':'.default', 'LANGUAGE_ID':'ru', 'FORMAT_DATE':'DD.MM.YYYY', 'FORMAT_DATETIME':'DD.MM.YYYY HH:MI:SS', 'opt_context_ctrl':false, 'cookiePrefix':'BITRIX_SM', 'titlePrefix':'...', 'messPanelFixOn':'Закрепить панель', 'messPanelFixOff':'Открепить панель', 'messHideMenu':'Скрыть меню', 'messShowMenu':'Показать меню', 'messHideButtons':'Уменьшить кнопки', 'messShowButtons':'Увеличить кнопки', 'messFilterInactive':'Поиск не используется - показаны все записи', 'messFilterActive':'Используется поиск - показаны только найденные записи', 'messFilterLess':'Скрыть условие поиска', 'messLoading':'Загрузка...', 'messMenuLoading':'Загрузка...', 'messMenuLoadingTitle':'Загружаются пункты меню...', 'messNoData':'- Нет данных -', 'messExpandTabs':'Развернуть все вкладки на одну страницу', 'messCollapseTabs':'Свернуть вкладки', 'messPanelCollapse':'Скрыть панель', 'messPanelExpand':'Показать панель', 'exFormatDate':'dd.MM.yyyy', 'exFormatDateTime':'dd.MM.yyyy H:mm:ss', 'currentCultureInfoID':'1049', 'currentCultureInfoName':'ru-RU', 'securityTokenPair':'bxValidationToken=e2fb3671c933391fb067f1198569b101'}; var phpVars = dotNetVars;var bitrixWebAppPath=''; var APPPath = '';//]]>
</script>

				<script type='text/javascript'>
					var bxReconnectCount = 0;
					var bxReconnectMaxCount = 5;
					function BXReconnect()
					{
						bxReconnectCount++;
						if (bxReconnectCount < bxReconnectMaxCount)
						{
							var img = new Image(1,1);
							img.src = '/bitrix/Reconnect.aspx';
						}
					}

					window.setInterval('BXReconnect()',3570000);

				</script>
			
<script src="/bitrix/templates/gotdotnet/script.js?t=633942974557987346" type="text/javascript"></script>
<script src="javascript:void(0)" type="text/javascript"></script>
<script type="text/javascript">
//<![CDATA[
function bxPageAddHeadItemCompare(tag, item)
{
  if (!tag.tagName || (tag.tagName.toLowerCase() != item.tag.toLowerCase()))
	  return false;
  for(var key in item.attributes)
    if (tag.getAttribute(key) == null ||  (tag.getAttribute(key).toLowerCase() != item.attributes[key].toLowerCase()))
	    return false;
	return true;
}
function bxPageAddHeadItems(items)
{
  var head = document.getElementsByTagName('head')[0];
  for(var i = head.childNodes.length - 1; i >= 0; i--)
    if (head.childNodes[i].getAttribute)
    {
	    if (head.childNodes[i].getAttribute('bxPageHeadItem') != null)
        head.childNodes[i].isMarkedForDeletion = true;
      for(var j = 0; j < items.length; j++)
	      if (bxPageAddHeadItemCompare(head.childNodes[i], items[j]))
          items[j].doNotAdd = true;
    }

  for(var i = 0; i < items.length; i++)
  {
    if (items[i].doNotAdd)
      continue;
    var item = document.createElement(items[i].tag);
    item.setAttribute('bxPageHeadItem', 'true');
    for(var key in items[i].attributes)
      item.setAttribute(key, items[i].attributes[key]);
    head.insertBefore(item, head.childNodes[0]);
  }
}
//]]>
</script>

	<div id="page-footer-wrapper">
		<div id="panel"><DIV style="width:0px; height:0px; overflow:hidden;"><div id="ctl00_Requisite_UP_AJAX">

</div></DIV><input type="hidden" name="bxValidationToken" value="e2fb3671c933391fb067f1198569b101" /></div>	
		<div id="page-wrapper">

			<div id="user-menu">
<a href="http://www.gotdotnet.ru/forums/2/134454/" style="position:absolute; top:10px; left: 46px;">Важное объявление о переносе форумов</a>
				<noindex><ul id="user-menu-list">
					
						<li class="user-profile">Привет, <span>Гость</span>!</li>
						<li class="user-login"><a href="/login/?ReturnUrl=%2fblogs%2ftk%2f" rel="nofollow">Войти</a></li>
						<li class="user-register"><a href="/register/?ReturnUrl=%2fblogs%2ftk%2f" rel="nofollow">Регистрация</a></li>
					
				</ul></noindex>
			</div>
			<div id="header">
				<div id="logo"><a href="/" title="На главную страницу"></a></div>
				<div id="primary-menu">
					<div id="primary-menu-items">
						

<ul id="primary-menu-list">
	<li class="selected"><span><a href="http://www.gotdotnet.ru/"><noindex>Записи</noindex></a></span></li><li><span><a href="http://www.gotdotnet.ru/forums/"><noindex>Форумы</noindex></a></span></li><li><span><a href="http://www.gotdotnet.ru/people/"><noindex>Люди</noindex></a></span></li><li><span><a href="http://www.gotdotnet.ru/files/"><noindex>Файлы</noindex></a></span></li><li><span><a href="http://www.gotdotnet.ru/job/"><noindex>Работа</noindex></a></span></li><li><span><a href="http://www.gotdotnet.ru/technologies/"><noindex>Технологии</noindex></a></span></li>
</ul>
					</div>
				</div>
				

<div id="secondary-menu">
	<div id="secondary-menu-items">
		<ul id="secondary-menu-list">
	<li><a href="http://www.gotdotnet.ru/"><noindex>Все</noindex></a></li><li><a href="http://www.gotdotnet.ru/news/"><noindex>Новости</noindex></a></li><li><a href="http://www.gotdotnet.ru/events/"><noindex>События</noindex></a></li><li><a href="http://www.gotdotnet.ru/articles/"><noindex>Статьи</noindex></a></li><li class=" selected"><a href="http://www.gotdotnet.ru/blogs/"><noindex>Блоги</noindex></a></li>
		</ul>
	</div>	
</div>

	
			</div>
			<div id="page-content" class="sidebar">

				
				<div id="content-container">
					<div id="content">
						
						<div id="page-title"><h1>TK's Blog</h1></div>
						
<div class="hr"></div>

<div class="blog-post-list-container">
	

<div class="blog-content">

	<div class="blog-posts blog-post-list">
		<div id="blog-posts-content">
			
			<div class="blog-post blog-post-year-2008 blog-post-month-12 blog-post-day-3 blog-post-first">
				<h2 class="blog-post-title"><a href="/blogs/tk/5574/" title="Visual Studio Team System 2008 Database Edition GDR ">Visual Studio Team System 2008 Database Edition GDR </a></h2>
				<div class="blog-post-info-back blog-post-info-top">
					<div class="blog-post-info">
						<div class="blog-author">
							<a class="blog-author-icon" href="/people/14205/"></a><a class="" href="/blogs/tk/">TK</a>
						</div>
					    <div class="blog-post-date" title="03.12.2008 21:10">
							<span class="blog-post-day">03.12.2008</span> <span class="blog-post-time">21:10</span>
						</div>
						

					</div>
				</div>
				<div class="blog-post-content">
					На прошлой неделе появилась RTM версия <!--noindex--><a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=bb3ad767-5f69-4db9-b1c9-8f55759846ed&amp;displaylang=en" rel="nofollow">Microsoft&#174; Visual Studio Team System 2008 Database Edition GDR</a><!--/noindex--> не прошло и полу-года, как в VS 2008 появилась &quot;нормальная&quot; поддержка Sql Server 2008 :) Но, кроме новых проектов добавилось и пару полезных сборок. Одна из полезных возможностей это готовый Sql парсер и генератор Sql по готовой модели.<br/>
<br/>
Использовать парсер можно в разных полезных целях. Например, можно доверить пользователю ввод частей Sql запроса не сильно заботясь о возможных Sql injections.<br/>
<br/>
Реализация выходит более чем простая - создается парсер (для нужного диалекта TSql), парсер по введенному Sql запросу создает экземпляр Expression используя который достаточно просто провести проверку того, что именно ввел пользователь:<br/>
<table class="blog-quote"><tr><th>Цитата</th></tr><tr><td><p><span style="color: Black; background-color: transparent; font-family: Courier New; font-size: 11px"><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px">using</span> System;<br/>
<span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px">using</span> System.IO;<br/>
<span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px">using</span> System.Collections.Generic;<br/>
</span><span style="color: Black; background-color: transparent; font-family: Courier New; font-size: 11px"><span style="color: Green; background-color: transparent; font-family: Courier New; font-size: 11px">// Все самое полезное находится тут</span></span><br/>
<span style="color: Black; background-color: transparent; font-family: Courier New; font-size: 11px"><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px">using</span> Microsoft.Data.Schema.ScriptDom;<br/>
<span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px">using</span> Microsoft.Data.Schema.ScriptDom.Sql;<br/>
<br/>
<span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px">class</span> Program<br/>
{<br/>
</span></p><table class="blog-quote"><tr><th>Цитата</th></tr><tr><td><span style="color: Black; background-color: transparent; font-family: Courier New; font-size: 11px"><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px">static</span> <span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px">void</span> Main()</span><br/>
<span style="color: Black; background-color: transparent; font-family: Courier New; font-size: 11px"> {</span><br/>
<table class="blog-quote"><tr><th>Цитата</th></tr><tr><td><span style="color: Black; background-color: transparent; font-family: Courier New; font-size: 11px"> var parser <span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px">=</span> <span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px">new</span> TSql90Parser(<span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px">false</span>);</span><br/>
<span style="color: Black; background-color: transparent; font-family: Courier New; font-size: 11px"> var errors <span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px">=</span> <span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px">default</span>(IList&lt;ParseError&gt;);</span><br/>
<span style="color: Black; background-color: transparent; font-family: Courier New; font-size: 11px"> var crit <span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px">=</span> <span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px">&quot;Message LIKE '%test%'&quot;</span>;</span><br/>
<span style="color: Black; background-color: transparent; font-family: Courier New; font-size: 11px"> var reader <span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px">=</span> <span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px">new</span> StringReader(crit);</span><br/>
<br/>
<span style="color: Black; background-color: transparent; font-family: Courier New; font-size: 11px"> Expression expr <span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px">=</span> parser.ParseBooleanExpression(reader, <span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px">out</span> errors);</span><br/>
<span style="color: Black; background-color: transparent; font-family: Courier New; font-size: 11px"> <span style="color: Green; background-color: transparent; font-family: Courier New; font-size: 11px">// Здесь может проверяться, что пользователь использовал колонки только из &quot;белого&quot; списка или ограничить часть доступного функционала </span></span><br/>
<span style="color: Black; background-color: transparent; font-family: Courier New; font-size: 11px"> <span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px">if</span> (validateExpr(expr))</span><br/>
<span style="color: Black; background-color: transparent; font-family: Courier New; font-size: 11px"> {</span><br/>
<span style="color: Black; background-color: transparent; font-family: Courier New; font-size: 11px"> var gen <span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px">=</span> <span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px">new</span> Sql90ScriptGenerator();</span><br/>
<span style="color: Black; background-color: transparent; font-family: Courier New; font-size: 11px"> var script <span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px">=</span> <span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px">default</span>(<span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px">string</span>);</span><br/>
<span style="color: Black; background-color: transparent; font-family: Courier New; font-size: 11px"> gen.GenerateScript(expr, <span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px">out</span> script);</span><br/>
<br/>
<span style="color: Black; background-color: transparent; font-family: Courier New; font-size: 11px"> <span style="color: Green; background-color: transparent; font-family: Courier New; font-size: 11px">// Полученный фрагмент можно объединть с SELECT частью и выполнить полученный запрос</span></span><br/>
<span style="color: Black; background-color: transparent; font-family: Courier New; font-size: 11px"> execScript(script);</span><br/>
</td></tr></table><span style="color: Black; background-color: transparent; font-family: Courier New; font-size: 11px"> }</span><br/>
</td></tr></table><span style="color: Black; background-color: transparent; font-family: Courier New; font-size: 11px">}</span></td></tr></table>Само собой, что можно распарсить и обычный SELECT - на этот случай, у реализации TSqlParser есть масса полезных методов. <br/>
<br/>
PS<br/>
В процессе использования обнаружилось, что парсер реализован на базе <!--noindex--><a href="http://antlr.org/" rel="nofollow">antlr</a><!--/noindex--><br/>

					<div class="blog-clear-float"></div>
				</div>

				<div class="blog-post-meta">
					<div class="blog-post-info-back blog-post-info-bottom">
						<div class="blog-post-info">
							<div class="blog-author">
								<a class="blog-author-icon" href="/people/14205/"></a><a class="" href="/blogs/tk/">TK</a>
							</div>
							<div class="blog-post-date" title="03.12.2008 21:10">
								<span class="blog-post-day">03.12.2008</span> <span class="blog-post-time">21:10</span>
							</div>
						</div>
					</div>

					<div class="blog-post-meta-util">
					    
						    <span class="blog-post-comments-link"><a href="/blogs/tk/5574/#comments" title="Комментариев"><span class="blog-post-link-caption">Комментариев:</span><span class="blog-post-link-counter">0</span></a></span>
						    
					    
						<span class="blog-post-views-link"><a href="/blogs/tk/5574/" title="Просмотров"><span class="blog-post-link-caption">Просмотров:</span><span class="blog-post-link-counter">497</span></a></span>
						
					</div>
					
					
					<div class="blog-post-tag">
						<span>Теги: </span>
						<a href="/blogs/tk/tags/?sql">SQL</a>, <a href="/blogs/tk/tags/?vs.net">VS.NET</a>
					</div>
											
				</div>
			</div>
			
			<div class="blog-post blog-post-alt blog-post-year-2008 blog-post-month-1 blog-post-day-11">
				<h2 class="blog-post-title"><a href="/blogs/tk/5573/" title="Про комментарии и rss">Про комментарии и rss</a></h2>
				<div class="blog-post-info-back blog-post-info-top">
					<div class="blog-post-info">
						<div class="blog-author">
							<a class="blog-author-icon" href="/people/14205/"></a><a class="" href="/blogs/tk/">TK</a>
						</div>
					    <div class="blog-post-date" title="11.01.2008 20:52">
							<span class="blog-post-day">11.01.2008</span> <span class="blog-post-time">20:52</span>
						</div>
						

					</div>
				</div>
				<div class="blog-post-content">
					<p>Недавно выяснилось, что не все авторы на <!--noindex--><a href="http://blogs.gotdotnet.ru/" rel="nofollow">http://blogs.gotdotnet.ru</a><!--/noindex--> знают как отслеживать новые комментарии к сообщениям в своем блоге. Были даже предложения сделать рассылку уведомлений на электрическую почту&#160;J.&#160;Между тем, все работает и без нее - достаточно только подписаться на специальный rss фид. Есть два фида: для получения отслеживания всех сообщений <!--noindex--><a href="http://blogs.gotdotnet.ru/personal/tk/SyndicationService.asmx/GetCommentsRss" rel="nofollow">как тут</a><!--/noindex-->&#160;или для отслеживания одного конкретного сообщения <!--noindex--><a href="http://blogs.gotdotnet.ru/personal/tk/SyndicationService.asmx/GetEntryCommentsRss?guid=12e7d642-14c1-43b8-a501-62c7d6979289" rel="nofollow">как тут</a><!--/noindex-->.</p>
					<div class="blog-clear-float"></div>
				</div>

				<div class="blog-post-meta">
					<div class="blog-post-info-back blog-post-info-bottom">
						<div class="blog-post-info">
							<div class="blog-author">
								<a class="blog-author-icon" href="/people/14205/"></a><a class="" href="/blogs/tk/">TK</a>
							</div>
							<div class="blog-post-date" title="11.01.2008 20:52">
								<span class="blog-post-day">11.01.2008</span> <span class="blog-post-time">20:52</span>
							</div>
						</div>
					</div>

					<div class="blog-post-meta-util">
					    
						    <span class="blog-post-comments-link"><a href="/blogs/tk/5573/#comments" title="Комментариев"><span class="blog-post-link-caption">Комментариев:</span><span class="blog-post-link-counter">0</span></a></span>
						    
					    
						<span class="blog-post-views-link"><a href="/blogs/tk/5573/" title="Просмотров"><span class="blog-post-link-caption">Просмотров:</span><span class="blog-post-link-counter">226</span></a></span>
						
					</div>
					
					
					<div class="blog-post-tag">
						<span>Теги: </span>
						<a href="/blogs/tk/tags/?faq">FAQ</a>
					</div>
											
				</div>
			</div>
			
			<div class="blog-post blog-post-year-2007 blog-post-month-12 blog-post-day-24">
				<h2 class="blog-post-title"><a href="/blogs/tk/5572/" title="Конкурс проектов на Silverlight">Конкурс проектов на Silverlight</a></h2>
				<div class="blog-post-info-back blog-post-info-top">
					<div class="blog-post-info">
						<div class="blog-author">
							<a class="blog-author-icon" href="/people/14205/"></a><a class="" href="/blogs/tk/">TK</a>
						</div>
					    <div class="blog-post-date" title="24.12.2007 11:20">
							<span class="blog-post-day">24.12.2007</span> <span class="blog-post-time">11:20</span>
						</div>
						

					</div>
				</div>
				<div class="blog-post-content">
					Сегодня запустили сайт конкурса <!--noindex--><a href="http://russia.silverlightchallenge.eu/Default.aspx" rel="nofollow">Silverlight проектов</a><!--/noindex-->. Про условия участия Миша уже <!--noindex--><a href="http://blogs.gotdotnet.ru/personal/mixen/PermaLink.aspx?guid=8E2652B1-DD5E-43D5-A6B1-CC0DE53AE735" rel="nofollow">написал</a><!--/noindex-->. Организационные вопросы (как загрузить проект на сайт конкурса, что делать если что-то не работает или работает напонятно как =) можно задавать тут.&#160; <br/>

					<div class="blog-clear-float"></div>
				</div>

				<div class="blog-post-meta">
					<div class="blog-post-info-back blog-post-info-bottom">
						<div class="blog-post-info">
							<div class="blog-author">
								<a class="blog-author-icon" href="/people/14205/"></a><a class="" href="/blogs/tk/">TK</a>
							</div>
							<div class="blog-post-date" title="24.12.2007 11:20">
								<span class="blog-post-day">24.12.2007</span> <span class="blog-post-time">11:20</span>
							</div>
						</div>
					</div>

					<div class="blog-post-meta-util">
					    
						    <span class="blog-post-comments-link"><a href="/blogs/tk/5572/#comments" title="Комментариев"><span class="blog-post-link-caption">Комментариев:</span><span class="blog-post-link-counter">3</span></a></span>
						    
					    
						<span class="blog-post-views-link"><a href="/blogs/tk/5572/" title="Просмотров"><span class="blog-post-link-caption">Просмотров:</span><span class="blog-post-link-counter">248</span></a></span>
						
					</div>
					
					
					<div class="blog-post-tag">
						<span>Теги: </span>
						<a href="/blogs/tk/tags/?silverlight">Silverlight</a>
					</div>
											
				</div>
			</div>
			
			<div class="blog-post blog-post-alt blog-post-year-2007 blog-post-month-2 blog-post-day-2">
				<h2 class="blog-post-title"><a href="/blogs/tk/5571/" title="Перемещение директории или файла в корзину ">Перемещение директории или файла в корзину </a></h2>
				<div class="blog-post-info-back blog-post-info-top">
					<div class="blog-post-info">
						<div class="blog-author">
							<a class="blog-author-icon" href="/people/14205/"></a><a class="" href="/blogs/tk/">TK</a>
						</div>
					    <div class="blog-post-date" title="02.02.2007 8:05">
							<span class="blog-post-day">02.02.2007</span> <span class="blog-post-time">8:05</span>
						</div>
						

					</div>
				</div>
				<div class="blog-post-content">
					Как поместить в корзину файл и не использовать PInvoke<br/>
<br/>
<a class="blog-cut-link" href="/blogs/tk/5571/#cut1">Читать дальше</a>
					<div class="blog-clear-float"></div>
				</div>

				<div class="blog-post-meta">
					<div class="blog-post-info-back blog-post-info-bottom">
						<div class="blog-post-info">
							<div class="blog-author">
								<a class="blog-author-icon" href="/people/14205/"></a><a class="" href="/blogs/tk/">TK</a>
							</div>
							<div class="blog-post-date" title="02.02.2007 8:05">
								<span class="blog-post-day">02.02.2007</span> <span class="blog-post-time">8:05</span>
							</div>
						</div>
					</div>

					<div class="blog-post-meta-util">
					    
						    <span class="blog-post-comments-link"><a href="/blogs/tk/5571/#comments" title="Комментариев"><span class="blog-post-link-caption">Комментариев:</span><span class="blog-post-link-counter">1</span></a></span>
						    
					    
						<span class="blog-post-views-link"><a href="/blogs/tk/5571/" title="Просмотров"><span class="blog-post-link-caption">Просмотров:</span><span class="blog-post-link-counter">256</span></a></span>
						
					</div>
					
					
					<div class="blog-post-tag">
						<span>Теги: </span>
						<a href="/blogs/tk/tags/?.net">.NET</a>
					</div>
											
				</div>
			</div>
			
			<div class="blog-post blog-post-year-2007 blog-post-month-1 blog-post-day-20">
				<h2 class="blog-post-title"><a href="/blogs/tk/5570/" title="Первые рипы HD-DVD фильмов уже в BitTorrent">Первые рипы HD-DVD фильмов уже в BitTorrent</a></h2>
				<div class="blog-post-info-back blog-post-info-top">
					<div class="blog-post-info">
						<div class="blog-author">
							<a class="blog-author-icon" href="/people/14205/"></a><a class="" href="/blogs/tk/">TK</a>
						</div>
					    <div class="blog-post-date" title="20.01.2007 18:54">
							<span class="blog-post-day">20.01.2007</span> <span class="blog-post-time">18:54</span>
						</div>
						

					</div>
				</div>
				<div class="blog-post-content">
					Сейчас про то, что у DVD фильмов есть какая-то там защита уже давно никто не вспоминает. Интересно, что будет к тому моменту когда HD-DVD получит сравнимое распространение...<br/>
<br/>
<a class="blog-cut-link" href="/blogs/tk/5570/#cut1">Читать дальше</a>
					<div class="blog-clear-float"></div>
				</div>

				<div class="blog-post-meta">
					<div class="blog-post-info-back blog-post-info-bottom">
						<div class="blog-post-info">
							<div class="blog-author">
								<a class="blog-author-icon" href="/people/14205/"></a><a class="" href="/blogs/tk/">TK</a>
							</div>
							<div class="blog-post-date" title="20.01.2007 18:54">
								<span class="blog-post-day">20.01.2007</span> <span class="blog-post-time">18:54</span>
							</div>
						</div>
					</div>

					<div class="blog-post-meta-util">
					    
						    <span class="blog-post-comments-link"><a href="/blogs/tk/5570/#comments" title="Комментариев"><span class="blog-post-link-caption">Комментариев:</span><span class="blog-post-link-counter">0</span></a></span>
						    
					    
						<span class="blog-post-views-link"><a href="/blogs/tk/5570/" title="Просмотров"><span class="blog-post-link-caption">Просмотров:</span><span class="blog-post-link-counter">199</span></a></span>
						
					</div>
					
					
					<div class="blog-post-tag">
						<span>Теги: </span>
						<a href="/blogs/tk/tags/?fun">Fun</a>
					</div>
											
				</div>
			</div>
			
			<div class="blog-post blog-post-alt blog-post-year-2007 blog-post-month-1 blog-post-day-10">
				<h2 class="blog-post-title"><a href="/blogs/tk/5569/" title="Сетевые игры или причем тут Ющенко.">Сетевые игры или причем тут Ющенко.</a></h2>
				<div class="blog-post-info-back blog-post-info-top">
					<div class="blog-post-info">
						<div class="blog-author">
							<a class="blog-author-icon" href="/people/14205/"></a><a class="" href="/blogs/tk/">TK</a>
						</div>
					    <div class="blog-post-date" title="10.01.2007 12:05">
							<span class="blog-post-day">10.01.2007</span> <span class="blog-post-time">12:05</span>
						</div>
						

					</div>
				</div>
				<div class="blog-post-content">
					Политическая игра о которой я узнал от Саши Ложечкина и Гайдара Магданурова. <br/>
<br/>
<a class="blog-cut-link" href="/blogs/tk/5569/#cut1">Читать дальше</a>
					<div class="blog-clear-float"></div>
				</div>

				<div class="blog-post-meta">
					<div class="blog-post-info-back blog-post-info-bottom">
						<div class="blog-post-info">
							<div class="blog-author">
								<a class="blog-author-icon" href="/people/14205/"></a><a class="" href="/blogs/tk/">TK</a>
							</div>
							<div class="blog-post-date" title="10.01.2007 12:05">
								<span class="blog-post-day">10.01.2007</span> <span class="blog-post-time">12:05</span>
							</div>
						</div>
					</div>

					<div class="blog-post-meta-util">
					    
						    <span class="blog-post-comments-link"><a href="/blogs/tk/5569/#comments" title="Комментариев"><span class="blog-post-link-caption">Комментариев:</span><span class="blog-post-link-counter">0</span></a></span>
						    
					    
						<span class="blog-post-views-link"><a href="/blogs/tk/5569/" title="Просмотров"><span class="blog-post-link-caption">Просмотров:</span><span class="blog-post-link-counter">191</span></a></span>
						
					</div>
					
					
					<div class="blog-post-tag">
						<span>Теги: </span>
						<a href="/blogs/tk/tags/?fun">Fun</a>
					</div>
											
				</div>
			</div>
			
			<div class="blog-post blog-post-year-2006 blog-post-month-2 blog-post-day-18">
				<h2 class="blog-post-title"><a href="/blogs/tk/5568/" title="Первый CTP для Visual Studio Tools for Applications  (VSTA)">Первый CTP для Visual Studio Tools for Applications  (VSTA)</a></h2>
				<div class="blog-post-info-back blog-post-info-top">
					<div class="blog-post-info">
						<div class="blog-author">
							<a class="blog-author-icon" href="/people/14205/"></a><a class="" href="/blogs/tk/">TK</a>
						</div>
					    <div class="blog-post-date" title="18.02.2006 22:56">
							<span class="blog-post-day">18.02.2006</span> <span class="blog-post-time">22:56</span>
						</div>
						

					</div>
				</div>
				<div class="blog-post-content">
					Долгое время, VBA SDK был одним из самых мощных средств для добавления возможностей кастомизации в разрабатываемые приложения. Теперь, ему на замену, ожидается VSTA<br/>
<br/>
<a class="blog-cut-link" href="/blogs/tk/5568/#cut1">Читать дальше</a>
					<div class="blog-clear-float"></div>
				</div>

				<div class="blog-post-meta">
					<div class="blog-post-info-back blog-post-info-bottom">
						<div class="blog-post-info">
							<div class="blog-author">
								<a class="blog-author-icon" href="/people/14205/"></a><a class="" href="/blogs/tk/">TK</a>
							</div>
							<div class="blog-post-date" title="18.02.2006 22:56">
								<span class="blog-post-day">18.02.2006</span> <span class="blog-post-time">22:56</span>
							</div>
						</div>
					</div>

					<div class="blog-post-meta-util">
					    
						    <span class="blog-post-comments-link"><a href="/blogs/tk/5568/#comments" title="Комментариев"><span class="blog-post-link-caption">Комментариев:</span><span class="blog-post-link-counter">1</span></a></span>
						    
					    
						<span class="blog-post-views-link"><a href="/blogs/tk/5568/" title="Просмотров"><span class="blog-post-link-caption">Просмотров:</span><span class="blog-post-link-counter">267</span></a></span>
						
					</div>
					
					
					<div class="blog-post-tag">
						<span>Теги: </span>
						<a href="/blogs/tk/tags/?programming">Programming</a>
					</div>
											
				</div>
			</div>
			
			<div class="blog-post blog-post-alt blog-post-year-2006 blog-post-month-2 blog-post-day-4">
				<h2 class="blog-post-title"><a href="/blogs/tk/5567/" title="Чат с разработчиками DLinq в феврале">Чат с разработчиками DLinq в феврале</a></h2>
				<div class="blog-post-info-back blog-post-info-top">
					<div class="blog-post-info">
						<div class="blog-author">
							<a class="blog-author-icon" href="/people/14205/"></a><a class="" href="/blogs/tk/">TK</a>
						</div>
					    <div class="blog-post-date" title="04.02.2006 15:32">
							<span class="blog-post-day">04.02.2006</span> <span class="blog-post-time">15:32</span>
						</div>
						

					</div>
				</div>
				<div class="blog-post-content">
					Девятого февраля запланирован первый DLinq чат. Есть возможность передать свой feedback напрямую разработчикам<br/>
<br/>
<a class="blog-cut-link" href="/blogs/tk/5567/#cut1">Читать дальше</a>
					<div class="blog-clear-float"></div>
				</div>

				<div class="blog-post-meta">
					<div class="blog-post-info-back blog-post-info-bottom">
						<div class="blog-post-info">
							<div class="blog-author">
								<a class="blog-author-icon" href="/people/14205/"></a><a class="" href="/blogs/tk/">TK</a>
							</div>
							<div class="blog-post-date" title="04.02.2006 15:32">
								<span class="blog-post-day">04.02.2006</span> <span class="blog-post-time">15:32</span>
							</div>
						</div>
					</div>

					<div class="blog-post-meta-util">
					    
						    <span class="blog-post-comments-link"><a href="/blogs/tk/5567/#comments" title="Комментариев"><span class="blog-post-link-caption">Комментариев:</span><span class="blog-post-link-counter">0</span></a></span>
						    
					    
						<span class="blog-post-views-link"><a href="/blogs/tk/5567/" title="Просмотров"><span class="blog-post-link-caption">Просмотров:</span><span class="blog-post-link-counter">179</span></a></span>
						
					</div>
					
					
					<div class="blog-post-tag">
						<span>Теги: </span>
						<a href="/blogs/tk/tags/?.net">.NET</a>
					</div>
											
				</div>
			</div>
			
			<div class="blog-post blog-post-year-2006 blog-post-month-1 blog-post-day-17">
				<h2 class="blog-post-title"><a href="/blogs/tk/5566/" title="Что ждет нас после &quot;Orcas&quot;">Что ждет нас после &quot;Orcas&quot;</a></h2>
				<div class="blog-post-info-back blog-post-info-top">
					<div class="blog-post-info">
						<div class="blog-author">
							<a class="blog-author-icon" href="/people/14205/"></a><a class="" href="/blogs/tk/">TK</a>
						</div>
					    <div class="blog-post-date" title="17.01.2006 21:02">
							<span class="blog-post-day">17.01.2006</span> <span class="blog-post-time">21:02</span>
						</div>
						

					</div>
				</div>
				<div class="blog-post-content">
					LINQ еще толком и не появился, а его разработчики уже готовят почву для дальнейшего развития. Оно впечатляет! :)<br/>
<br/>
<a class="blog-cut-link" href="/blogs/tk/5566/#cut1">Читать дальше</a>
					<div class="blog-clear-float"></div>
				</div>

				<div class="blog-post-meta">
					<div class="blog-post-info-back blog-post-info-bottom">
						<div class="blog-post-info">
							<div class="blog-author">
								<a class="blog-author-icon" href="/people/14205/"></a><a class="" href="/blogs/tk/">TK</a>
							</div>
							<div class="blog-post-date" title="17.01.2006 21:02">
								<span class="blog-post-day">17.01.2006</span> <span class="blog-post-time">21:02</span>
							</div>
						</div>
					</div>

					<div class="blog-post-meta-util">
					    
						    <span class="blog-post-comments-link"><a href="/blogs/tk/5566/#comments" title="Комментариев"><span class="blog-post-link-caption">Комментариев:</span><span class="blog-post-link-counter">6</span></a></span>
						    
					    
						<span class="blog-post-views-link"><a href="/blogs/tk/5566/" title="Просмотров"><span class="blog-post-link-caption">Просмотров:</span><span class="blog-post-link-counter">357</span></a></span>
						
					</div>
					
					
					<div class="blog-post-tag">
						<span>Теги: </span>
						<a href="/blogs/tk/tags/?.net">.NET</a>
					</div>
											
				</div>
			</div>
			
			<div class="blog-post blog-post-alt blog-post-year-2006 blog-post-month-1 blog-post-day-9 blog-post-last">
				<h2 class="blog-post-title"><a href="/blogs/tk/5565/" title="Опять про транзакции... ">Опять про транзакции... </a></h2>
				<div class="blog-post-info-back blog-post-info-top">
					<div class="blog-post-info">
						<div class="blog-author">
							<a class="blog-author-icon" href="/people/14205/"></a><a class="" href="/blogs/tk/">TK</a>
						</div>
					    <div class="blog-post-date" title="09.01.2006 21:11">
							<span class="blog-post-day">09.01.2006</span> <span class="blog-post-time">21:11</span>
						</div>
						

					</div>
				</div>
				<div class="blog-post-content">
					Полезная статья в MSDN про использование транзакций в .NET<br/>
<br/>
<a class="blog-cut-link" href="/blogs/tk/5565/#cut1">Читать дальше</a>
					<div class="blog-clear-float"></div>
				</div>

				<div class="blog-post-meta">
					<div class="blog-post-info-back blog-post-info-bottom">
						<div class="blog-post-info">
							<div class="blog-author">
								<a class="blog-author-icon" href="/people/14205/"></a><a class="" href="/blogs/tk/">TK</a>
							</div>
							<div class="blog-post-date" title="09.01.2006 21:11">
								<span class="blog-post-day">09.01.2006</span> <span class="blog-post-time">21:11</span>
							</div>
						</div>
					</div>

					<div class="blog-post-meta-util">
					    
						    <span class="blog-post-comments-link"><a href="/blogs/tk/5565/#comments" title="Комментариев"><span class="blog-post-link-caption">Комментариев:</span><span class="blog-post-link-counter">1</span></a></span>
						    
					    
						<span class="blog-post-views-link"><a href="/blogs/tk/5565/" title="Просмотров"><span class="blog-post-link-caption">Просмотров:</span><span class="blog-post-link-counter">290</span></a></span>
						
					</div>
					
					
					<div class="blog-post-tag">
						<span>Теги: </span>
						<a href="/blogs/tk/tags/?.net">.NET</a>
					</div>
											
				</div>
			</div>
			
			<div class="blog-navigation-box blog-navigation-bottom">
				<div class="blog-page-navigation">
					

<div class="navigation">

	<b>Страницы:</b>&nbsp;<span class="disabled"><span class="arrow">←</span><span class="ctrl"><script type="text/javascript">document.write(" Ctrl");</script></span>&nbsp;предыдущая</span> <a href="/blogs/tk/page-2/" id="navigation-previous-page">следующая</a>&nbsp;<span class="ctrl"><script type="text/javascript">document.write(" Ctrl");</script></span><span class="arrow">→</span>&nbsp;
	<br /> 
	<span class="nav-current-page">1</span> <a href="/blogs/tk/page-2/">2</a> <a href="/blogs/tk/page-3/">3</a> <a href="/blogs/tk/page-4/">4</a> <a href="/blogs/tk/page-5/">5</a> <a href="/blogs/tk/page-6/">6</a> <a href="/blogs/tk/page-7/">7</a> <a href="/blogs/tk/page-8/">8</a> <a href="/blogs/tk/page-9/">9</a> 		                                                                                                       	
</div>

				</div>
			</div>
			
		</div>
	</div>
	<div class="blog-clear-float">
	</div>
			
</div>


		
        

	<div class="blog-clear-float"></div>
</div>









 


					</div>
					<div id="sidebar">
					
						<div id="sidebar-search-container">
							<div id="search" onkeypress="return GotDotNet.Utils.FireDefaultButton(event, 'ctl00_SearchSubmit2')">
								<div class="content-rounded-box">
									<b class="r1"></b><b class="r0"></b>
									<div class="search-inner-box">
										<input type="text" id="search-textbox" class="search-textbox" onblur="if (this.value=='')this.value='поиск'" onclick="if (this.value=='поиск')this.value=''" value="поиск" name="search-text"/>
									</div>
									<b class="r0"></b><b class="r1"></b>
								</div>
								<div id="search-button"><input type="submit" name="ctl00$SearchSubmit2" value="" onclick="window.location.href='/search/?q=' + encodeURIComponent(document.getElementById('search-textbox').value); return false;" id="ctl00_SearchSubmit2" class="search-loupe" /></div>
							</div>
						</div>
					

<div class="sidebar-rounded-box">
	<b class="r3"></b><b class="r1"></b><b class="r1"></b>
	<div class="inner-box">
	
		
		<h3>TK's Blog<a href="/blogs/tk/rss/" class="header-feed-icon" title="Подписаться на RSS блога"></a></h3>
		
		<div class="user-item user-item-sidebar">
			<div class="user-avatar">
				<a href="/people/14205/"/></a>
			</div>
			<div class="user-info">
				<a href="/people/14205/">TK</a>
				
				
			</div>
		</div>
		
		<h5 style="font-weight: normal;">Веб-журнал Неблагодарных Пользователей</h5>
		

		<div class="hr"></div>
		
		<ul class="mdash-list">
			<li><a href="/blogs/tk/" title="Блог">Блог</a></li>
			
			

			
		</ul>
	</div>
	<b class="r1"></b><b class="r1"></b><b class="r3"></b>
</div>

 
 

<div class="sidebar-rounded-box search-cloud-box">
	<div class="inner-box" style="background:none">
	<h3>Облако тегов</h3>
	<div class="hr"></div>
	<div class="search-cloud">
		<noindex>
		
			<a rel="nofollow" href="/blogs/tk/tags/?.net" 
				style=" font-size: 260%;"
			>.net</a>
			
			<a rel="nofollow" href="/blogs/tk/tags/?.net+gui" 
				style=" font-size: 90%;"
			>.net gui</a>
			
			<a rel="nofollow" href="/blogs/tk/tags/?.net+ug" 
				style=" font-size: 146%;"
			>.net ug</a>
			
			<a rel="nofollow" href="/blogs/tk/tags/?asp.net" 
				style=" font-size: 123%;"
			>asp.net</a>
			
			<a rel="nofollow" href="/blogs/tk/tags/?faq" 
				style=" font-size: 123%;"
			>faq</a>
			
			<a rel="nofollow" href="/blogs/tk/tags/?fun" 
				style=" font-size: 90%;"
			>fun</a>
			
			<a rel="nofollow" href="/blogs/tk/tags/?java" 
				style=" font-size: 80%;"
			>java</a>
			
			<a rel="nofollow" href="/blogs/tk/tags/?private" 
				style=" font-size: 98%;"
			>private</a>
			
			<a rel="nofollow" href="/blogs/tk/tags/?programming" 
				style=" font-size: 135%;"
			>programming</a>
			
			<a rel="nofollow" href="/blogs/tk/tags/?silverlight" 
				style=" font-size: 80%;"
			>silverlight</a>
			
			<a rel="nofollow" href="/blogs/tk/tags/?sql" 
				style=" font-size: 90%;"
			>sql</a>
			
			<a rel="nofollow" href="/blogs/tk/tags/?vs.net" 
				style=" font-size: 166%;"
			>vs.net</a>
			
			<a rel="nofollow" href="/blogs/tk/tags/?winapi" 
				style=" font-size: 80%;"
			>winapi</a>
			
		</noindex>
	</div>
	</div>
</div>




<div class="sidebar-rounded-box">
	<b class="r3"></b><b class="r1"></b><b class="r1"></b>
	<div class="inner-box">
		<div class="sidebar-banner"><noindex><a href="http://www.parking.ru/hosting/win?r=gotdot " target="_top"><img border="0" src="/upload/banners/1f3/gotdotnet2011_win2.gif" width="240" height="347"/></a></noindex></div>
	</div>
	<b class="r1"></b><b class="r1"></b><b class="r3"></b>
</div>



<div class="sidebar-rounded-box">
	<b class="r3"></b><b class="r1"></b><b class="r1"></b>
	<div class="inner-box">
		
		<h3>Записи</h3>
		
		<dl class="sidebar-tabs">
		
				<dt class="selected"><a href="/blogs/posts/popular/" onclick="return GotDotNet.Tab.Select(this);">Популярные</a></dt>
				<dd class="selected">
					<div class="tab-content">			
						

<ul class="last-items-list">

	<li><a href="/blogs/sanchez911/" class="item-author">sanchez911</a> <i>&gt;</i> <a href="/blogs/sanchez911/10301/" class="item-name" title="Своя IT-фирма: свежачок">Своя IT-фирма: свежачок</li>

	<li><a href="/blogs/calabonga/" class="item-author">Calabonga</a> <i>&gt;</i> <a href="/blogs/calabonga/10376/" class="item-name" title="NET 4.0: Class vs Struct или в чём различия между Классом и Структурой">NET 4.0: Class vs Struct или в чём различия между Классом и Структурой</li>

	<li><a href="/blogs/trukhinyuri/" class="item-author">trukhinyuri</a> <i>&gt;</i> <a href="/blogs/trukhinyuri/10275/" class="item-name" title="Всемирная слава или смерть ждет Windows Phone 7?">Всемирная слава или смерть ждет Windows Phone 7?</li>

	<li><a href="/blogs/calabonga/" class="item-author">Calabonga</a> <i>&gt;</i> <a href="/blogs/calabonga/10339/" class="item-name" title="Linq vs TSQL">Linq vs TSQL</li>

	<li><a href="/blogs/all-about-Windows-Phone-7/" class="item-author">Polhovskiy</a> <i>&gt;</i> <a href="/blogs/all-about-Windows-Phone-7/10321/" class="item-name" title="Разработчику. Совет #13 – Общий совет">Разработчику. Совет #13 – Общий совет</li>

	<li><a href="/blogs/sashaeve/" class="item-author">sashaeve</a> <i>&gt;</i> <a href="/blogs/sashaeve/10245/" class="item-name" title="ASP.NET MVC мини профайлер">ASP.NET MVC мини профайлер</li>

	<li><a href="/blogs/all-about-Windows-Phone-7/" class="item-author">Polhovskiy</a> <i>&gt;</i> <a href="/blogs/all-about-Windows-Phone-7/10303/" class="item-name" title="Привет разработчикам социальных приложений">Привет разработчикам социальных приложений</li>

	<li><a href="/blogs/sashaeve/" class="item-author">sashaeve</a> <i>&gt;</i> <a href="/blogs/sashaeve/10351/" class="item-name" title="Модульное тестирование ASP.NET MVC 3 приложений в Visual Studio 2010">Модульное тестирование ASP.NET MVC 3 приложений в Visual Studio 2010</li>

	<li><a href="/blogs/sidr/" class="item-author">Stanislavus</a> <i>&gt;</i> <a href="/blogs/sidr/10346/" class="item-name" title="Аспектно-ориентированное программирование vs Dependency Injection">Аспектно-ориент<wbr/>&shy;ированное программировани<wbr/>&shy;е vs Dependency Injection</li>

	<li><a href="/blogs/calabonga/" class="item-author">Calabonga</a> <i>&gt;</i> <a href="/blogs/calabonga/10295/" class="item-name" title="ASP.NET MVC3: Как обновить структуру БД (Code First) если данные уже в базе?">ASP.NET MVC3: Как обновить структуру БД (Code First) если данные уже в базе?</li>

</ul>


						<div class="tab-footer"><a href="/blogs/posts/popular/" title="Все популярные записи">Все популярные записи</a></div>
					</div>
				</dd>
				
				<dt><a href="/blogs/posts/discuss/" onclick="return GotDotNet.Tab.Select(this);">Обсуждаемые</a></dt>
				<dd>
					<div class="tab-content">
						

<ul class="last-items-list">

	<li><a href="/blogs/sanchez911/" class="item-author">sanchez911</a> <i>&gt;</i> <a href="/blogs/sanchez911/10301/" class="item-name" title="Своя IT-фирма: свежачок">Своя IT-фирма: свежачок</li>

	<li><a href="/blogs/trukhinyuri/" class="item-author">trukhinyuri</a> <i>&gt;</i> <a href="/blogs/trukhinyuri/10275/" class="item-name" title="Всемирная слава или смерть ждет Windows Phone 7?">Всемирная слава или смерть ждет Windows Phone 7?</li>

	<li><a href="/blogs/general/" class="item-author">general</a> <i>&gt;</i> <a href="/blogs/general/10368/" class="item-name" title="От идеи до реализации: история игры GB&amp;W">От идеи до реализации: история игры GB&amp;W</li>

	<li><a href="/blogs/sadomovalex/" class="item-author">sadomovalex</a> <i>&gt;</i> <a href="/blogs/sadomovalex/10387/" class="item-name" title="Программное создание иерархических таксономий в обработчике событий компонента">Программное создание иерархических таксономий в обработчике событий компонента</li>

	<li><a href="/blogs/korshikov/" class="item-author">Andrey_Fedorovi<wbr/>&shy;ch</a> <i>&gt;</i> <a href="/blogs/korshikov/10386/" class="item-name" title="Свежие загрузки">Свежие загрузки</li>

	<li><a href="/blogs/sbelskiy/" class="item-author">sbelskiy</a> <i>&gt;</i> <a href="/blogs/sbelskiy/10333/" class="item-name" title="SharePoint 2010 SP1 уже в закачке. Что нового?">SharePoint 2010 SP1 уже в закачке. Что нового?</li>

	<li><a href="/blogs/sbelskiy/" class="item-author">sbelskiy</a> <i>&gt;</i> <a href="/blogs/sbelskiy/10373/" class="item-name" title="Изменения в API (SharePoint 2010 SP1)">Изменения в API (SharePoint 2010 SP1)</li>

</ul>


						<div class="tab-footer"><a href="/blogs/posts/discuss/" title="Все обсуждаемые записи">Все обсуждаемые записи</a></div>

					</div>
				</dd>
		</dl>
	</div>
	<b class="r1"></b><b class="r1"></b><b class="r3"></b>
</div>

<div class="sidebar-rounded-box">
	<b class="r3"></b><b class="r1"></b><b class="r1"></b>
	<div class="inner-box">
		
		<h3>Блоги</h3>
		
		<dl class="sidebar-tabs">
		
				<dt class="selected"><a href="/blogs/" onclick="return GotDotNet.Tab.Select(this);">Новые</a></dt>
				<dd class="selected">
					<div class="tab-content">
					
						



<ul class="last-items-list">
<li><a href="/people/43885/" class="item-author">muakacho</a><i>&gt;</i> <a href="/blogs/unknownexception/" class="item-name" title="unknown exception">unknown exception</a></li><li><a href="/people/54626/" class="item-author">Georgiy Mogelashvili</a><i>&gt;</i> <a href="/blogs/csharpvip/" class="item-name" title="Профессионально<wbr/>&shy;е обучение C#">Профессионально<wbr/>&shy;е обучение C#</a></li><li><a href="/people/32522/" class="item-author">Дмитрий Пялов</a><i>&gt;</i> <a href="/blogs/netforgecms/" class="item-name" title=".NET Forge CMS">.NET Forge CMS</a></li><li><a href="/people/28355/" class="item-author">Anticitizen One</a><i>&gt;</i> <a href="/blogs/slpravodelov/" class="item-name" title="Праводелов Сергей">Праводелов Сергей</a></li><li><a href="/people/46952/" class="item-author">Sergey.Homyuk</a><i>&gt;</i> <a href="/blogs/sergeyhomyuk/" class="item-name" title="Sergey Homyuk Blog">Sergey Homyuk Blog</a></li><li><a href="/people/54549/" class="item-author">AZarubin</a><i>&gt;</i> <a href="/blogs/azarubin/" class="item-name" title="All around SharePoint 2010">All around SharePoint 2010</a></li><li><a href="/people/54516/" class="item-author">TechEd Russia</a><i>&gt;</i> <a href="/blogs/ruteched/" class="item-name" title="TechEd Russia">TechEd Russia</a></li><li><a href="/people/43391/" class="item-author">AndreyS1</a><i>&gt;</i> <a href="/blogs/AndreyS1/" class="item-name" title="IT/ .NET/ SharePoint">IT/ .NET/ SharePoint</a></li><li><a href="/people/50974/" class="item-author">cL1Nk3r</a><i>&gt;</i> <a href="/blogs/gavruk/" class="item-name" title="Блог Сергея Гаврука">Блог Сергея Гаврука</a></li><li><a href="/people/54275/" class="item-author">Amdera</a><i>&gt;</i> <a href="/blogs/amdera/" class="item-name" title="На вершине Шарика">На вершине Шарика</a></li>
</ul>

					</div>
				</dd>
				
				<dt><a href="/blogs/" onclick="return GotDotNet.Tab.Select(this);">Обсуждаемые</a></dt>
				<dd>
					<div class="tab-content">
						
						



<ul class="last-items-list">
<li><a href="/people/9112/" class="item-author">mihailik</a><i>&gt;</i> <a href="/blogs/mihailik/" class="item-name" title="Олег Михайлик">Олег Михайлик</a></li><li><a href="/people/9814/" class="item-author">Михаил Черномордиков</a><i>&gt;</i> <a href="/blogs/mixen/" class="item-name" title="Mikhail Chernomordikov [MSFT]">Mikhail Chernomordikov [MSFT]</a></li><li><a href="/people/11030/" class="item-author">ceo</a><i>&gt;</i> <a href="/blogs/ceo/" class="item-name" title="Нотатник Вiктора Шатохiна [MSFT]">Нотатник Вiктора Шатохiна [MSFT]</a></li><li><a href="/people/8424/" class="item-author">gaidar</a><i>&gt;</i> <a href="/blogs/gaidar/" class="item-name" title="Gaidar Magdanurov">Gaidar Magdanurov</a></li><li><a href="/people/48499/" class="item-author">Русский MSDN</a><i>&gt;</i> <a href="/blogs/msdn/" class="item-name" title="Новости Русского MSDN">Новости Русского MSDN</a></li><li><a href="/people/10996/" class="item-author">Alexander Lozhechkin [MSFT]</a><i>&gt;</i> <a href="/blogs/allo/" class="item-name" title="Alexander Lozhechkin">Alexander Lozhechkin</a></li><li><a href="/people/29963/" class="item-author">agladkik</a><i>&gt;</i> <a href="/blogs/agladkik/" class="item-name" title="Andrey Gladkikh: Microsoft Dynamics">Andrey Gladkikh: Microsoft Dynamics</a></li><li><a href="/people/49575/" class="item-author">sashaeve</a><i>&gt;</i> <a href="/blogs/sashaeve/" class="item-name" title="Блог Microsoft .NET User Group Винница">Блог Microsoft .NET User Group Винница</a></li><li><a href="/people/18610/" class="item-author">sergun</a><i>&gt;</i> <a href="/blogs/sergun/" class="item-name" title="Sergey Zwezdin">Sergey Zwezdin</a></li><li><a href="/people/17511/" class="item-author">beerbong</a><i>&gt;</i> <a href="/blogs/beerbong/" class="item-name" title="Bong Blog">Bong Blog</a></li>
</ul>

					</div>
				</dd>
		</dl>
	</div>
	<b class="r1"></b><b class="r1"></b><b class="r3"></b>
</div>
				
					</div>
				</div>			
			</div>		
		</div>
		<div id="space-for-footer"></div>
	</div>
	<div id="footer">
		<div id="footer-logo" title="Планета .NET" onclick="scroll(0,0);"></div>
		<div id="footer-links">
			<div id="footer-about-links">
				<noindex>
				<a href="/about/">О сайте</a> &nbsp;
				<a href="mailto:admin@gotdotnet.ru">Свяжитесь с нами</a> &nbsp;
				<a href="#print" onclick="GotDotNet.Printer.SetPrintCSS(true); scroll(0,0);">Версия для печати</a>
				</noindex>
			</div>
			<div id="footer-sponsor-links">
				<span>Работает на <a href="http://www.bitrix.net/" title=".NET Forge CMS">.NET Forge CMS</a></span>  &nbsp;|&nbsp;
				<span>Хостинг на <a href="http://www.parking.ru/">Parking.Ru</a></span>
			</div>
		</div>
	</div>

<div>

	<input type="hidden" name="__EVENTVALIDATION" id="__EVENTVALIDATION" value="/wEWAgKUuovqBAKGsfLXA+di9f6LDoBjPA37xMKbpf4tI11C" />
</div>
<script type="text/javascript">document.write('<div style="display:none;"><iframe src="/bitrix/handlers/Advertising/RegBannerDisplay.ashx?code=GBIP" width="0" height="0" marginwidth="0" marginheight="0" frameborder="0" border="0"></iframe></div>');</script><noscript><div style="display:none;"><iframe src="/bitrix/handlers/Advertising/RegBannerDisplay.ashx?code=GBIP" width="0" height="0" marginwidth="0" marginheight="0" frameborder="0" border="0"></iframe></div></noscript></form>
<script type="text/javascript">
	var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www.");
	document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E"));
</script>
<script type="text/javascript">
	try {
		var pageTracker = _gat._getTracker("UA-12644658-1");
		pageTracker._trackPageview();
	} catch (err) { }</script>



<script src="/lib/wt.js" type="text/javascript"></script>

<script type="text/javascript">
//<![CDATA[
var _tag=new WebTrends();
_tag.dcsid="dcs0gcx1f100004bjlbslq2j8_6e2o";
// _tag.fpcdom=".domain.com";
_tag.dcsGetId();
_tag.trackevents=true;
//]]>>
</script>

<script type="text/javascript">
//<![CDATA[
// Add custom parameters here.
//_tag.DCSext.param_name=param_value;
_tag.dcsCollect();
//]]>>
</script>
<noscript><div><img alt="DCSIMG" id="DCSIMG" width="1" height="1" src="http://m.webtrends.com/dcs0gcx1f100004bjlbslq2j8_6e2o/njs.gif?dcsuri=/nojavascript&amp;WT.js=No&amp;WT.tv=MS.3.0.0"/></div></noscript>

<script type="text/javascript">window.setTimeout(GotDotNet.Utils.HighlightCode, 0);</script>
</body>
</html>
