SharePoint 2013 - Změna odkazu pro editaci ContentType

30.04.2015

Problém

Potřebuji při editaci obsahu v listu editovat data ve vlastní (custom) stránce.

Řešení

Je potřeba změnit URL v Content Typu na požavanou stránku. Lze to udělat minimálně 2 způsoby (viz níže):

  • V XML definici pro Content Type
  • programově kodem

XML definice

Lze to provést XML definici pro zaklani custom listu v souboru Schema.xml.

<ContentTypes>
    <ContentType Group="Moje" Description="" Inherits="TRUE" Version="0">
        <FieldRefs>
            <FieldRef DisplayName="Zpráva ID" Required="TRUE" />
            <FieldRef DisplayName="Čas doručení" Required="FALSE" Format="DateTime" />
            ....
            ....
        </FieldRefs>
        <XmlDocuments>
            <XmlDocument NamespaceURI="https://schemas.microsoft.com/sharepoint/v3/contenttype/forms/url">
                <FormUrls xmlns="https://schemas.microsoft.com/sharepoint/v3/contenttype/forms/url">
                    <Display>_layouts/15/PROJEKT/dispform.aspx</Display>
                    <Edit>_layouts/15/PROJEKT/editform.aspx</Edit>
                    <New>_layouts/15/PROJEKT/newform.aspx</New>
               </FormUrls>
            </XmlDocument>
        </XmlDocuments>
    </ContentType>
</ContentTypes>

Programově

Lze to udělat následujícím kódem. Využití např. v konzolové aplikaci pro jednorázové nasazení.

SPWeb web = SPContext.Current.Web;
web.AllowUnsafeUpdates = true;
SPContentType ct = web.ContentTypes["Muj Your Content Type"];

ct.EditFormUrl = "_layouts/editform.aspx";
ct.NewFormUrl = "_layouts/newform.aspx";
ct.DisplayFormUrl = "_layouts/dispform.aspx";

ct.Update();

Odkazy

© 2020 Olda Zátopek
Vytvořeno službou Webnode
Vytvořte si webové stránky zdarma! Tento web je vytvořený pomocí Webnode. Vytvořte si vlastní stránky zdarma ještě dnes! Vytvořit stránky