0

This is what I've achieved do far:

                        Field parent = list.Fields.AddFieldAsXml(
                       @"<Field Type='Lookup' DisplayName='ParentContentType' 
                                Required='FALSE' EnforceUniqueValues='FALSE'
                                List= 'ContentTypes'
                                ShowField='Title' UnlimitedLengthInDocumentLibrary='FALSE' 
                                RelationshipDeleteBehavior='None' 
                                StaticName='ParentContentType' Name='ParentContentType'/>",
                   true, AddFieldOptions.DefaultValue);

But I am not able to set the Get information from: value for this lookup field.

Can anyone please suggest how to achieve it?

Code added:

var listCreationInfo = new ListCreationInformation();
listCreationInfo.Title = "New List";
listCreationInfo.TemplateType = (int)ListTemplateType.CustomGrid;
List list = web.Lists.Add(listCreationInfo);
list.Update();
ctxt.ExecuteQuery();
Field parent = list.Fields.AddFieldAsXml(
    @"<Field Type='Lookup' DisplayName='ParentContentType' 
    Required='FALSE' EnforceUniqueValues='FALSE'
    List= 'ContentTypes'
    ShowField='Title' UnlimitedLengthInDocumentLibrary='FALSE' 
    RelationshipDeleteBehavior='None' 
    StaticName='ParentContentType' Name='ParentContentType'/>",
    true, AddFieldOptions.DefaultValue);
Abhishek
  • 1,974
  • 5
  • 31
  • 67

1 Answers1

1

Please try this.

public static void AddLookupField()
{
            string lookupSchema = @"<Field Type='Lookup' DisplayName='mylookup2' 
                                    Required='FALSE' EnforceUniqueValues='FALSE'
                                    List='{70d6098c-6ba0-4e9e-b101-a60b88fc226a}' 
                                    ShowField='Title' UnlimitedLengthInDocumentLibrary='FALSE' 
                                    RelationshipDeleteBehavior='None' 
                                    StaticName='mylookup' Name='mylookup2'/>";

            ClientContext clientContext = new ClientContext("http://sharepoint10");
            List list = clientContext.Web.Lists.GetByTitle("listtitle");
            FieldCollection fields = list.Fields;

            clientContext.Load(list);
            clientContext.Load(fields);

            clientContext.ExecuteQuery();

            Field lookupField = fields.AddFieldAsXml(lookupSchema, true, AddFieldOptions.AddToDefaultContentType);
            lookupField.Update();

            clientContext.Load(lookupField);
            clientContext.ExecuteQuery();


}
Sharique Ansari
  • 1,458
  • 1
  • 12
  • 22