Чтобы найти заголовок представления по умолчанию внутри schema.xml, посмотрите на атрибут DisplayName соответствующего элемента View . Если значением атрибута является «Все ссылки», то у вас все будет в порядке.
Если, как и в случае с определением списка ссылок «из коробки», это значение равно $Resources:core,All_Links;
, то есть еще что рассмотреть. Если ваши сайты только на английском языке, то вы все равно можете найти «Все ссылки». Но если у вас есть другие языковые сайты, вам нужно будет сделать что-то вроде этого:
string title = SPUtility.GetLocalizedString(
"$Resources:All_Links;",
"core",
web.Language);
SPView view = list.Views[title];
Теперь, даже если значением атрибута является «Все ссылки» или все сайты на английском языке, все еще существует вероятность (особенно в событии обновления), что заголовок был изменен со значения по умолчанию. В этих случаях я предпочитаю искать по BaseViewID . К сожалению, для BaseViewID
нет индексатора, поэтому я использую следующий код:
private SPView GetView(SPList list, string id)
{
SPView view = null;
foreach (SPView v in list.Views)
{
if (id == v.BaseViewID)
{
view = v;
break;
}
}
return view;
}