SharePointCommunity
Die deutschsprachige Community für SharePoint, Microsoft 365, Teams, Yammer und mit Azure

Sponsored by

Willkommen im Forum Archiv.
Einträge sind hier nicht mehr möglich, aber der Bestand von 12 Jahren SharePoint-Wissen ist hier recherchierbar.




Spalten, Conent Types, List Def & Listen in VS erstellen

Geprüfte Antwort Dieser Beitrag hat 5 Antworten

Ohne Rang
5 Beiträge
Udo Neßhöver erstellt 8 Aug. 2012 17:07
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hallo!

Ich versuche gerade Columns, Content Types, Liste Definitions und Lists im Visual Studio zu erstellen und das Ganze als Feature auf ein frisches System zu 'deployen'.

Die Listen werden kaskadierend als Lookup genutzt. Im Beispiel:

Permissions ist eine einfache Liste, die ein paar Werte enthaelt. Die Listen Users und Groups haben ein Lookup-Multi Feld, welches auf die Permissions Liste zugreift. In den SP-eigenen Dialogen wird dieser Multi-Lookup auch korrekt angezeigt,m allerdings wird der Wert/die Werte nicht in den Users/Groups abgespeichert.

Wer kann mich da auf den richtigen Weg bringen. Sourcecode bei Bedarf komplett erhaeltlich ;)

Herzlichen Dank schonmal im Voraus.

Cheers,
Udo

Alle Antworten

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 8 Aug. 2012 18:02
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Du erzeugst die Columns, ContentTypes usw. alle deklarativ, also per XML-File? Dabei machen die Lookups gerne mal Probleme (weil die Listenreferenzen nicht ordentlich aufgelöst werden). Ich behandle das deshalb immer im FeatureActivated-Event und erstelle dort die Lookups alle per Code.

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
5 Beiträge
Udo Neßhöver Als Antwort am 8 Aug. 2012 18:38
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Ja,alles per XML. Die Listenreferenz (Attribute List) ist bei mir die Angabe der Listen URL, also z.B. "Lists/Permissions" so wies im URL Attribute der Listen Instanz steht.Ist das zumindest von meiner Denkweise her korrekt?

Über das FeatAct_Event bin ich in machen Google-Ergebnissen auchschon gestossen, aber ich hatte gehoft, alles per XML abhandeln zu können.

Hättest du evtl. - es klingt,als würdest du so was schonmal gemacht zu haben - ein Code Snippet? ;)

Cheers,
Udo

Ohne Rang
929 Beiträge
Thomas Östreich Als Antwort am 8 Aug. 2012 18:39
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Man kann sehr gut Lookup Felder per Schema erstellen man muss bloß einiges beachten:

Reihenfolge der Listenerstellung, sehr gut über Hidden-Features und ActivationDependency lösbar (Pro Liste 1 Hidden Feature)

Keine Globalen Felder und Inhaltstypen verwenden statt dessen lieber Listinhaltstypen und Felder

Ohne Rang
19231 Beiträge
Andi Fandrich Als Antwort am 9 Aug. 2012 10:52
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

@Thomas: Du hast natürlich Recht, aber es gibt dabei eben die von Dir erwähnten Einschränkungen.

@Udo: falls Du es doch per Code machen möchtest:

Das aktuelle Web erhälst Du aus den properties:
SPSite site = (SPSite)properties.Feature.Parent;
SPWeb web = site.RootWeb;

Alle Websitespalten bekommst Du aus web.Fields und dort kannst Du über AddLookup neue Nachschlagefelder erzeugen. Dabei mußt Du die ID, der Liste in der nachgeschlagen wird und die ID des Webs, in der sich diese Liste befindet angeben.

Viele Grüße
Andi
af @ evocom de
Blog
Ohne Rang
5 Beiträge
Udo Neßhöver Als Antwort am 14 Aug. 2012 08:50
SchlechtSchlechtIn OrdnungIn OrdnungDurchschnittDurchschnittGutGutSehr gutSehr gut

Hallo zusammen,

Danke fuer die vielen Anregungen. Mittlerweile haben sich (schon wieder) die Anforderungen leicht geaendert. Es wird wohl ,ehr auf Code und nicht so sehr auf XMLs raus laufen. Alle Fingerzeige haben mir sehr geholfen und meine Blicke in die richtige Richtung geleitet.

Cheers,
Udo