List<TabSection> tabList = (from t in content.ChildControls
let ts = t as TabSection
where ts != null
select ts).ToList();
В Stackoverflow (и на всех сайтах Stack Exchange) создается файл sitemap.xml, который содержит ссылку на каждый вопрос , размещенный в системе. Когда публикуется новый вопрос, они просто добавляют еще одну запись в конец файла карты сайта. Добавление в конец файла не так ресурсоемко, но файл довольно большой.
Это единственный способ, которым поисковые системы, такие как Google, могут эффективно сканировать сайт.
Джефф Этвуд говорит об этом в своем блоге : Важность файлов Sitemap
Это из Справочная страница Google для веб-мастеров о файлах Sitemap :
Sitemap особенно полезны, если:
- Ваш сайт имеет динамическое содержание.
- На вашем сайте есть страницы, которые робот Googlebot не может легко обнаружить во время процесс сканирования - например, страницы с расширенными возможностями AJAX или Flash.
- Ваш сайт новый, и на него мало ссылок. (Робот Google сканирует Интернет переход по ссылкам с одной страницы на другой, поэтому, если ваш сайт не в порядке связаны, нам может быть трудно обнаружите это.)
- На вашем сайте большой архив содержательных страниц, ссылки на которые недостаточно высоки. друг с другом или не связаны все.
Нет необходимости повторно создавать XML карты сайта Google при каждой публикации вопроса. Гораздо проще просто создать XML-файл по запросу непосредственно из базы данных (с небольшим кэшированием).
Чтобы уменьшить нагрузку, карту сайта можно разделить на несколько карт сайта. Разделение его по дням / месяцам позволит вам указать Google, что нужно часто извлекать сегодняшнюю карту сайта, но только время от времени извлекать карту сайта, созданную шесть месяцев назад.
Даже в чем-то вроде StackOverflow есть определенная статическая организация; есть часто задаваемые вопросы, страницы тегов, страницы вопросов, страницы пользователей, страницы значков и т. д .; Я бы сказал, что для очень динамичного сайта лучший способ приблизиться к карте сайта - это иметь карту категорий; каждый узел в карте сайта может указывать на страницу с динамически генерируемыми данными (узел для страницы вопроса, узел для страницы пользователя и т. д.).
Конечно, карта сайта может даже не подходить для данного сайт; там требуется определенная доля суждения.
каждый узел в карте сайта может указывать на страницу с динамически генерируемыми данными (узел для страницы вопроса, узел для страницы пользователя и т. д.).Конечно, карта сайта может даже не подходить для данного сайт; там требуется определенная доля суждения.
каждый узел в карте сайта может указывать на страницу с динамически генерируемыми данными (узел для страницы вопроса, узел для страницы пользователя и т. д.).Конечно, карта сайта может даже не подходить для данного сайт; там требуется определенная доля суждения.
Я бы создал карту сайта только для более статичных страниц сайта. Например, в StackOverflow карта сайта может отображать ссылки на страницы FAQ, О программе, Вопросы, Теги, Пользователи и т. Д., Но не отображать ссылки на фактические вопросы или все теги и различных пользователей.