Лента новостей

Кредит под залог недвижимости
Необходимость в займе финансовых средств может возникнуть как у частного лица, так и предприятия. Сегодня кредитование не является особенной проблемой и, например, получить кредит под залог недвижимости

Недвижимость
Наша великая Родина богата прекрасными населенными пунктами и городами с удивительной архитектурой и комфортными условиями жизни. Конечно, очень привлекательна в этом плане Новосибирск, который расположен

Недвижимость новая рига
Хотите почувствовать себя королями? Хотя нет, так наверное могут жить только боги недвижимость новая рига. Элитный поселок с замечательной архитектурой, открытым спа, бассейнами, фонтанами. Все находиться

Инвестиции в недвижимость Европы: тенденции 2017 года
Для инвесторов: обзор ключевых рынков европейской недвижимости в 2017 году. Недвижимость в Германии Доля недвижимости Германии в ВВП страны сегодня составляет 9,8%. Недвижимость в Германии отличалась

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

«Недвижимость» / Госкорпорации отказано в эффективности
По результатам проверки Счетной палатой деятельности Фонда содействия реформированию жилищно-коммунального хозяйства ( Фонд ЖКХ), площадь аварийного жилья в стране выросла на 1,6 млн. квадратных метров

Лизинг недвижимости
Обычно компании берут аванс - 10-20 % со ставкой удорожания 6-8 %, иногда 10-12% в год на срок от 2 до 10 лет, предлагая различные варианты графиков лизинговых платежей. занимаются примерно десяток компаний

Специалист по недвижимости
Наша компания стремиться дать широкие возможности, удобство в работе без лишних трат всем участникам рынка недвижимости Крыма. Аренда квартир, комнат, коттеджей, продажа в Санкт-Петербурге Гильдия риэлторов

Коммерческие помещения | Жилье, недвижимость > Коммерческие помещения | Киев | SLANET
class="top_line"> id="topnav"> class="subcolumns" id="logonav"> id="nav demo" class="hlist"> id="topnav"> id="header_tab"> id="content"> class="c75l"> class="c25r"> class="subcolumns"> class="c75l">

Юрист по недвижимости
При осуществлении такой юридически сложной и трудоемкой сделки, как покупка или продажа квартиры или участка земли, достаточно часто возникает необходимость обращения за специализированной юридической

Zbuduj moduł inicjujący Episerver CMS 9 do sortowania niestandardowych kart modelu

Po pierwsze, chcę podkreślić zasługi kodu tutaj dla Per Magne Skuseth, pracownika Episerver i częstego współpracownika EpiserverWorld. Pierwotnie opublikował kod do sortowania niestandardowych kart w ten post EpiserverWorld. Chciałem pójść o krok dalej i pokazać kod, który można zawinąć w niestandardowy moduł inicjujący Episerver. Dopiero niedawno zacząłem bawić się EPiServer 9 i jeśli się zastanawiałeś, zbudowanie niestandardowego modułu inicjalizacji nie zmieniło się od poprzednich wersji.

Tak więc założenie to polega na konieczności sortowania kart budowania treści w niestandardowych typach stron i blokach. Lubię budować interfejs zaplecza do tworzenia treści w sposób łatwy w użyciu i prosty do zrozumienia. Osiąga się to zazwyczaj poprzez hamowanie sekcji bloku lub strony na zakładkach. Jedną z rzeczy, które próbuję zrobić ze wszystkimi artykułami, które publikuję, jest pokrótce omówienie konfiguracji projektu Visual Studio. Korzystam z Visual Studio 2015 i zainstalowałem najnowszą wersję EPiServer CMS 9 (wersja: 9.3.1 od chwili opublikowania tego posta) za pośrednictwem rozszerzenia EPiServer Visual Studio. W folderze Business, który jest instalowany domyślnie, tworzę folder o nazwie Initialization, w którym przechowywane są moje niestandardowe moduły inicjujące. W tym module kliknij folder prawym przyciskiem myszy i utwórz niestandardową klasę C # o nazwie TabSortOrder.

Kod do tworzenia modułu niestandardowego jest całkiem prosty. Wszystko, co musisz zrobić, to dziedziczyć z: IInitializableModule i dodać to do początku deklaracji klasy:

[ModuleDependency (typeof (EPiServer.Web.InitializationModule))]

Wewnątrz prywatnej metody void RegisterTabs znajduje się lista niestandardowych kart i ich kolejność sortowania. Reszta kodu jest dość oczywista.

przy użyciu EPiServer.Core; przy użyciu EPiServer.DataAbstraction; przy użyciu EPiServer.Framework; przy użyciu EPiServer.Framework.Initialization; przy użyciu EPiServer.Security; przy użyciu EPiServer.ServiceLocation; przy użyciu EPiServer.Shell.ObjectEditing; korzystanie z systemu; przy użyciu System.Linq; namespace YourNamespace.Business.Initialization {/// /// Moduł do ustawiania kolejności kart niestandardowego modelu /// [ModuleDependency (typeof (EPiServer.Web.InitializationModule))] public class TabSortOrder: IInitializableModule {public void Initialize (kontekst InitializationEngine ) {RegisterTabs (); if (context.HostType == HostType.WebApplication) {var registry = context.Locate.Advanced.GetInstance (); registry.RegisterMetadataHandler (typeof (ContentData), new SiteMetadataExtender ()); }} private void RegisterTabs () {var tabDefinitionRepository = ServiceLocator.Current.GetInstance <ITabDefinitionRepository> (); this.AddTabToList (tabDefinitionRepository, nowa TabDefinition () {Name = "Hero", RequiredAccess = AccessLevel.Edit, SortIndex = 27}); this.AddTabToList (tabDefinitionRepository, nowa TabDefinition () {Name = "SEO", RequiredAccess = AccessLevel.Edit, SortIndex = 28}); this.AddTabToList (tabDefinitionRepository, nowa TabDefinition () {Name = "Site Settings", RequiredAccess = AccessLevel.Edit, SortIndex = 29}); } private void AddTabToList (ITabDefinitionRepository tabDefinitionRepository, definicja TabDefinition) {TabDefinition existingTab = GetExistingTabDefinition (tabDefinitionRepository, definicja); if (existingTab! = null) {definicja.ID = existingTab.ID; } tabDefinitionRepository.Save (definicja); } prywatna statyczna TabDefinicja GetExistingTabDefinition (ITabDefinitionRepository tabDefinitionRepository,
Definicja TabDefinition) {return tabDefinitionRepository.List () .FirstOrDefault (t => t.Name.Equals (definition.Name, StringComparison.InvariantCultureIgnoreCase)); } public void Uninitialize (kontekst InitializationEngine) {} public void Preload (parametry string []) {}}}

To wszystko. Należy pamiętać, że Episerver zachowuje niestandardowy porządek sortowania na swoich kartach systemowych. Oto rodzaj dla odniesienia:

SystemTabNames.Content = SortIndex 10
SystemTabNames.Scheduling = SortIndex 20
SystemTabNames.Settings = SortIndex 30
SystemTabNames.Shortcut = SortIndex 40
SystemTabNames.Categories = SortIndex 50

Mam nadzieję, że pomoże ci to w sortowaniu niestandardowych kart w Episerver 9. Niedawno zacząłem się rozwijać w Episerver i naprawdę podoba mi się do tej pory. Z całym tym szaleństwem, które dzieje się teraz na świecie, zachęciłbym wszystkich do ciągłego uczenia się i robienia tego, co kochasz. Uwielbiam pisać kod i myśleć o rozwiązywaniu problemów z logiką programowania. Uderz mnie, jeśli masz jakieś pytania lub komentarze. Sprawdź także niektóre z moich publicznych repozytoriów GitHub tutaj .