Простой вариант - выполнить двойную сортировку:
b.sort()
b.sort(key=len)
Поскольку сортировка стабильна , она сохраняет порядок элементов в случае, если они равны по ключу; поэтому, сортируя сначала по алфавиту, элементы одинаковой длины остаются отсортированными таким образом.
Мы используем ELMAH в нашей среде MOSS 2007. Поскольку ELMAH использует HttpHandlers и настраивается через web.config, активация была простой задачей. Просто добавьте материал ELMAH в web.config для приложения, которое вы запускаете внутри SharePoint.
Если вы хотите, чтобы ELMAH сообщал об ошибках на уровне выше, чем ваше пользовательское приложение, то добавьте его в SharePoint web.config.
Там нет магии просто подключите его, как на любом другом сайте ASP.NET.
Одна вещь, которая ЕСТЬ При настройке ELMAH или большинства HTTPModules в Sharepoint важно то, что они должны быть в начале раздела httpModules. В противном случае SharePoint по существу проглотит исключение и функциональность ELMAH не будет активирована
Работает
<clear />
<add name="ErrorMail" type="Elmah.ErrorMailModule, Elmah"/>
<add name="ErrorLog" type="Elmah.ErrorLogModule, Elmah"/>
<add name="ErrorFilter" type="Elmah.ErrorFilterModule, Elmah"/>
<add name="SPRequest" type="Microsoft.SharePoint.ApplicationRuntime.SPRequestModule, Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" />
<add name="OutputCache" type="System.Web.Caching.OutputCacheModule" />
<add name="FormsAuthentication" type="System.Web.Security.FormsAuthenticationModule" />
... Rest of SharePoint modules....
Не работает
<clear />
<add name="SPRequest" type="Microsoft.SharePoint.ApplicationRuntime.SPRequestModule, Microsoft.SharePoint, Version=12.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c" />
<add name="OutputCache" type="System.Web.Caching.OutputCacheModule" />
<add name="FormsAuthentication" type="System.Web.Security.FormsAuthenticationModule" />
... Rest of SharePoint modules....
<add name="ErrorMail" type="Elmah.ErrorMailModule, Elmah"/>
<add name="ErrorLog" type="Elmah.ErrorLogModule, Elmah"/>
<add name="ErrorFilter" type="Elmah.ErrorFilterModule, Elmah"/>