SPFieldLookup.LookupField-Eigenschaft
Ruft ab oder legt den internen Namen des Felds in einer verknüpften Liste, die die Quelle der Wert dieses Felds ist.
Namespace: Microsoft.SharePoint
Assembly: Microsoft.SharePoint (in Microsoft.SharePoint.dll)
Syntax
'Declaration
Public Property LookupField As String
Get
Set
'Usage
Dim instance As SPFieldLookup
Dim value As String
value = instance.LookupField
instance.LookupField = value
public string LookupField { get; set; }
Eigenschaftswert
Typ: System.String
Eine Zeichenfolge, die den internen Namen des Felds enthält.
Hinweise
Nach ein Nachschlagefelds zu einer Liste Auflistung hinzufügen durch Aufrufen der AddLookup -Methode sollten Sie das Nachschlagefeld aus der Auflistung abrufen und das Quellfeld in der Zielliste identifizieren, indem die LookupField -Eigenschaft. Beim Festlegen der Eigenschaft LookupField müssen Sie die Methode Update für Änderungen in der Datenbank wirksam aufrufen.
Das Ziel der LookupField-Eigenschaft muss eines der folgenden Feldtypen sein:
SPFieldType.Counter
SPFieldType.DateTime
SPFieldType.Number
SPFieldType.Text
Darüber hinaus ist SPFieldType.Computed als Ziel zulässig, wenn Suchvorgänge aktiviert sind. Weitere Informationen finden Sie unter der EnableLookup -Eigenschaft der SPFieldComputed -Klasse. Der Feldtyp SPFieldType.Calculated kann ein Ziel sein, wenn die Ausgabe Text ist. Weitere Informationen finden Sie unter der OutputType -Eigenschaft der SPFieldCalculated -Klasse.
Beispiele
Das folgende Beispiel zeigt eine Konsolenanwendung, die eine Beziehung zwischen der Liste Customers und der Liste Pending Orders herstellt. Die Anwendung ruft die AddLookup-Methode auf, um das Nachschlagefeld Customer ID der Liste Pending Orders hinzuzufügen, und lässt das Feld auf das ID-Feld der Customers-Liste zeigen. Das neue Customer ID-Feld wird indiziert und so festgelegt, dass Löschungen aus der Nachschlageliste eingeschränkt sind.
using System;
using Microsoft.SharePoint;
namespace RelatedLists
{
class Program
{
static void Main(string[] args)
{
using (SPSite siteCollection = new SPSite("https://localhost"))
{
using (SPWeb site = siteCollection.OpenWeb())
{
SPList lookupList = site.Lists.TryGetList("Customers");
SPList relatedList = site.Lists.TryGetList("Pending Orders");
if (lookupList != null && relatedList != null)
{
string strPrimaryCol = relatedList.Fields.AddLookup("Customer ID", lookupList.ID, true);
SPFieldLookup primaryCol = (SPFieldLookup)relatedList.Fields.GetFieldByInternalName(strPrimaryCol);
primaryCol.LookupField = lookupList.Fields["ID"].InternalName;
primaryCol.Indexed = true;
primaryCol.RelationshipDeleteBehavior = SPRelationshipDeleteBehavior.Restrict;
primaryCol.Update();
}
}
}
Console.Write("\nPress ENTER to continue...");
Console.ReadLine();
}
}
}
Imports System
Imports Microsoft.SharePoint
Module ConsoleApp
Sub Main()
Using siteCollection As New SPSite("https://localhost")
Using site As SPWeb = siteCollection.OpenWeb()
Dim lookupList As SPList = site.Lists.TryGetList("Customers")
Dim relatedList As SPList = site.Lists.TryGetList("Pending Orders")
If lookupList IsNot Nothing AndAlso relatedList IsNot Nothing Then
Dim strPrimaryCol As String = relatedList.Fields.AddLookup("Customer ID", lookupList.ID, True)
Dim primaryCol As SPFieldLookup = _
DirectCast(relatedList.Fields.GetFieldByInternalName(strPrimaryCol), SPFieldLookup)
primaryCol.LookupField = lookupList.Fields("ID").InternalName
primaryCol.Indexed = True
primaryCol.RelationshipDeleteBehavior = SPRelationshipDeleteBehavior.Restrict
primaryCol.Update()
End If
End Using
End Using
Console.Write(vbLf & "Press ENTER to continue...")
Console.ReadLine()
End Sub
End Module