Compartilhar via


SPFieldLookup.LookupField property

Obtém ou define o nome interno do campo em uma lista relacionada é a origem do valor do campo.

Namespace:  Microsoft.SharePoint
Assembly:  Microsoft.SharePoint (in Microsoft.SharePoint.dll)

Syntax

'Declaração
Public Property LookupField As String
    Get
    Set
'Uso
Dim instance As SPFieldLookup
Dim value As String

value = instance.LookupField

instance.LookupField = value
public string LookupField { get; set; }

Property value

Type: System.String
Uma seqüência de caracteres que contém o nome interno do campo.

Comentários

Depois de adicionar um campo de pesquisa à coleção da lista, chamando o método AddLookup , você deve recuperar o campo de pesquisa da coleção e identificar o campo de origem na lista target, definindo a propriedade LookupField . Quando você definir a propriedade LookupField , você deve chamar o método Update para que as alterações tenham efeito no banco de dados.

O destino da propriedade LookupField deve ser um dos seguintes tipos de campo:

  • SPFieldType.Counter

  • SPFieldType.DateTime

  • SPFieldType.Number

  • SPFieldType.Text

Além disso, SPFieldType.Computed é permitido como um destino se pesquisas estiverem ativadas. Para obter mais informações, consulte a propriedade EnableLookup da classe SPFieldComputed . O tipo de campo de SPFieldType.Calculated pode ser um destino, se a saída de texto. Para obter mais informações, consulte a propriedade OutputType da classe SPFieldCalculated .

Examples

O exemplo a seguir é um aplicativo de console que cria uma relação entre a lista de clientes e a lista de pedidos pendentes. O aplicativo chama o método AddLookup para adicionar um campo de pesquisa chamado ID de cliente à lista de pedidos pendentes e aponta o campo no campo ID da lista de clientes. O novo campo de identificação do cliente é indexado e definido para restringir as exclusões da lista de pesquisa.

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

Ver também

Referência

SPFieldLookup class

SPFieldLookup members

Microsoft.SharePoint namespace

FieldId

LookupList

LookupWebId