Take the 2-minute tour ×
SharePoint Stack Exchange is a question and answer site for SharePoint enthusiasts. It's 100% free, no registration required.

I have created a simple web part following the FieldConsumerWebPart Example here. It consumes a connection to a field and displays the name and value of the field.

I added in the edit form of a regular SharePoint list and it worked successfully. I then added it to the edit form of an external list and got this error upon setting up the connection: "System.ArgumentException: Invalid field name. {00000000-0000-0000-0000-000000000000}...."

I have tried altering the default display name of the field without luck.

Here are the parameters for my read item method in my bdc model.

<Parameters>
  <Parameter Direction="In" Name="@primarykey">
    <TypeDescriptor TypeName="System.Int32" IdentifierName="primarykey" Name="primarykey" DefaultDisplayName="Primary Key" />
  </Parameter>
  <Parameter Direction="Return" Name="Read Item">
    <TypeDescriptor TypeName="System.Data.IDataReader, System.Data, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" IsCollection="true" Name="Read Item">
      <TypeDescriptors>
        <TypeDescriptor TypeName="System.Data.IDataRecord, System.Data, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" Name="Read ItemElement">
          <TypeDescriptors>
            <TypeDescriptor TypeName="System.Int32" ReadOnly="true" IdentifierName="primarykey" Name="primarykey" DefaultDisplayName="Primary Key" />
            <TypeDescriptor TypeName="System.String" Name="teststring" DefaultDisplayName="Test String">
              <Interpretation>
                <NormalizeString FromLOB="NormalizeToNull" ToLOB="NormalizeToNull" />
              </Interpretation>
            </TypeDescriptor>
            <TypeDescriptor TypeName="System.Nullable`1[[System.Int32, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]" Name="testint" DefaultDisplayName="Test Int" />
            <TypeDescriptor TypeName="System.String" Name="name" DefaultDisplayName="Name Field">
              <Properties>
                <Property Name="Size" Type="System.Int32">10</Property>
              </Properties>
              <Interpretation>
                <NormalizeString FromLOB="NormalizeToNull" ToLOB="NormalizeToNull" />
              </Interpretation>
            </TypeDescriptor>
          </TypeDescriptors>
        </TypeDescriptor>
      </TypeDescriptors>
    </TypeDescriptor>
  </Parameter>
</Parameters>
share|improve this question
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Browse other questions tagged or ask your own question.