Freigeben über


XML-Codeausschnitt: Modellieren einer BulkAssociationNavigator-Methode

Letzte Änderung: Mittwoch, 21. April 2010

Gilt für: SharePoint Server 2010

Nachfolgend sehen Sie ein Beispiel für eine BulkAssociationNavigator-Methode in einem BDC-Modell.

Beispiel

<Method IsStatic="false" Name="Bulk Customers Sales Orders" 
        DefaultDisplayName="Customers Sales Orders">
  <Properties>
    <Property Name="BackEndObject" Type="System.String">SalesOrderHeader
    </Property>
    <Property Name="BackEndObjectType" Type="System.String">SqlServerTable
    </Property>
    <Property Name="RdbCommandText" Type="System.String">
      SELECT [SalesOrderID] , [RevisionNumber] , [OrderDate] , [DueDate] , 
      [ShipDate] , [Status] , [OnlineOrderFlag] , [SalesOrderNumber] , 
      [PurchaseOrderNumber] , [AccountNumber] , [CustomerID] , [ContactID] , 
      [BillToAddressID] , [ShipToAddressID] , [ShipMethodID] , [SubTotal] , 
      [TaxAmt] , [Freight] , [TotalDue] , [Comment] , [rowguid] , 
      [ModifiedDate] , [TerritoryID] FROM [Sales].[SalesOrderHeader]
      WHERE [CustomerID] IN (@CustomerIDs)
    </Property>
    <Property Name="RdbCommandType" Type="System.Data.CommandType, System.Data, 
              Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
      Text</Property>
    <Property Name="Schema" Type="System.String">Sales</Property>
  </Properties>
  <Parameters>
    <Parameter Direction="In" Name="@CustomerIDs">
      <TypeDescriptor Name="CustomerIDs" TypeName="System.Int32[]" 
                      IsCollection="true">
        <TypeDescriptors>
          <TypeDescriptor TypeName="System.Int32" IdentifierName="CustomerID" 
                          IdentifierEntityName="Customer" 
                          IdentifierEntityNamespace="AdventureWorks" 
                          ForeignIdentifierAssociationName="Customers Sales Orders" 
                          Name="CustomerID" />
        </TypeDescriptors>
      </TypeDescriptor>
    </Parameter>
    <Parameter Direction="Return" Name="Bulk Customers Sales Orders">
      <TypeDescriptor TypeName="System.Data.IDataReader, System.Data, Version=2.0.0.0, 
                      Culture=neutral, PublicKeyToken=b77a5c561934e089" 
                      IsCollection="true" Name="Read Item">
        <TypeDescriptors>
          <TypeDescriptor TypeName="System.Data.IDataRecord, System.Data, 
                          Version=2.0.0.0, Culture=neutral, 
                          PublicKeyToken=b77a5c561934e089" Name="Read ItemElement">
            <TypeDescriptors>
              <TypeDescriptor TypeName="System.Int32" ReadOnly="true" 
                              IdentifierName="SalesOrderID" Name="SalesOrderID" />
              <TypeDescriptor TypeName="System.Byte" Name="RevisionNumber">
                <Properties>
                  <Property Name="RequiredInForms" Type="System.Boolean">true</Property>
                </Properties>
              </TypeDescriptor>
              <TypeDescriptor TypeName="System.DateTime" Name="OrderDate">
                <Properties>
                  <Property Name="RequiredInForms" Type="System.Boolean">true</Property>
                </Properties>
                <Interpretation>
                  <NormalizeDateTime LobDateTimeMode="UTC" />
                </Interpretation>
              </TypeDescriptor>
              <TypeDescriptor TypeName="System.DateTime" Name="DueDate">
                <Properties>
                  <Property Name="RequiredInForms" Type="System.Boolean">true</Property>
                </Properties>
                <Interpretation>
                  <NormalizeDateTime LobDateTimeMode="UTC" />
                </Interpretation>
              </TypeDescriptor>
              <TypeDescriptor TypeName="System.Nullable`1[[System.DateTime, mscorlib, 
                              Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]" 
                              Name="ShipDate">
                <Interpretation>
                  <NormalizeDateTime LobDateTimeMode="UTC" />
                </Interpretation>
              </TypeDescriptor>
              <TypeDescriptor TypeName="System.Byte" Name="Status">
                <Properties>
                  <Property Name="RequiredInForms" Type="System.Boolean">true</Property>
                </Properties>
              </TypeDescriptor>
              <TypeDescriptor TypeName="System.Boolean" Name="OnlineOrderFlag">
                <Properties>
                  <Property Name="RequiredInForms" Type="System.Boolean">true</Property>
                </Properties>
              </TypeDescriptor>
              <TypeDescriptor TypeName="System.String" ReadOnly="true" 
                              Name="SalesOrderNumber">
                <Properties>
                  <Property Name="Size" Type="System.Int32">25</Property>
                </Properties>
                <Interpretation>
                  <NormalizeString FromLOB="NormalizeToNull" 
                                   ToLOB="NormalizeToNull" />
                </Interpretation>
              </TypeDescriptor>
              <TypeDescriptor TypeName="System.String" Name="PurchaseOrderNumber">
                <Properties>
                  <Property Name="Size" Type="System.Int32">25</Property>
                </Properties>
                <Interpretation>
                  <NormalizeString FromLOB="NormalizeToNull" 
                                   ToLOB="NormalizeToNull" />
                </Interpretation>
              </TypeDescriptor>
              <TypeDescriptor TypeName="System.String" Name="AccountNumber">
                <Properties>
                  <Property Name="Size" Type="System.Int32">15</Property>
                </Properties>
                <Interpretation>
                  <NormalizeString FromLOB="NormalizeToNull" ToLOB="NormalizeToNull" />
                </Interpretation>
              </TypeDescriptor>
              <TypeDescriptor TypeName="System.Int32" IdentifierName="CustomerID" 
                              IdentifierEntityName="Customer" 
                              IdentifierEntityNamespace="AdventureWorks" 
                              ForeignIdentifierAssociationName="Customers Sales Orders" 
                              Name="CustomerID">
                <Properties>
                  <Property Name="RequiredInForms" Type="System.Boolean">true</Property>
                </Properties>
              </TypeDescriptor>
              <TypeDescriptor TypeName="System.Int32" Name="ContactID">
                <Properties>
                  <Property Name="RequiredInForms" Type="System.Boolean">true</Property>
                </Properties>
              </TypeDescriptor>
              <TypeDescriptor TypeName="System.Int32" Name="BillToAddressID">
                <Properties>
                  <Property Name="RequiredInForms" Type="System.Boolean">true</Property>
                </Properties>
              </TypeDescriptor>
              <TypeDescriptor TypeName="System.Int32" Name="ShipToAddressID">
                <Properties>
                  <Property Name="RequiredInForms" Type="System.Boolean">true</Property>
                </Properties>
              </TypeDescriptor>
              <TypeDescriptor TypeName="System.Int32" Name="ShipMethodID">
                <Properties>
                  <Property Name="RequiredInForms" Type="System.Boolean">true</Property>
                </Properties>
              </TypeDescriptor>
              <TypeDescriptor TypeName="System.Decimal" Name="SubTotal">
                <Properties>
                  <Property Name="Decimal Digits" Type="System.Int32">4</Property>
                  <Property Name="RequiredInForms" Type="System.Boolean">true</Property>
                </Properties>
              </TypeDescriptor>
              <TypeDescriptor TypeName="System.Decimal" Name="TaxAmt">
                <Properties>
                  <Property Name="Decimal Digits" Type="System.Int32">4</Property>
                  <Property Name="RequiredInForms" Type="System.Boolean">true</Property>
                </Properties>
              </TypeDescriptor>
              <TypeDescriptor TypeName="System.Decimal" Name="Freight">
                <Properties>
                  <Property Name="Decimal Digits" Type="System.Int32">4</Property>
                  <Property Name="RequiredInForms" Type="System.Boolean">true</Property>
                </Properties>
              </TypeDescriptor>
              <TypeDescriptor TypeName="System.Nullable`1[[System.Decimal, mscorlib, 
                              Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]" 
                              ReadOnly="true" Name="TotalDue">
                <Properties>
                  <Property Name="Decimal Digits" Type="System.Int32">4</Property>
                </Properties>
              </TypeDescriptor>
              <TypeDescriptor TypeName="System.String" Name="Comment">
                <Properties>
                  <Property Name="Size" Type="System.Int32">128</Property>
                </Properties>
                <Interpretation>
                  <NormalizeString FromLOB="NormalizeToNull" ToLOB="NormalizeToNull" />
                </Interpretation>
              </TypeDescriptor>
              <TypeDescriptor TypeName="System.Guid" Name="rowguid">
                <Properties>
                  <Property Name="RequiredInForms" Type="System.Boolean">true</Property>
                </Properties>
              </TypeDescriptor>
              <TypeDescriptor TypeName="System.DateTime" Name="ModifiedDate">
                <Properties>
                  <Property Name="RequiredInForms" Type="System.Boolean">true</Property>
                </Properties>
                <Interpretation>
                  <NormalizeDateTime LobDateTimeMode="UTC" />
                </Interpretation>
              </TypeDescriptor>
              <TypeDescriptor TypeName="System.Nullable`1[[System.Int32, mscorlib, 
                              Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089]]" 
                              Name="TerritoryID" />
            </TypeDescriptors>
          </TypeDescriptor>
        </TypeDescriptors>
      </TypeDescriptor>
    </Parameter>
  </Parameters>
  <MethodInstances>
    <Association Type="BulkAssociationNavigator" 
                 ReturnParameterName="Bulk Customers Sales Orders" 
                 Name="Bulk Customers Sales Orders" 
                 DefaultDisplayName="Bulk Customers Sales Orders">
      <SourceEntity Namespace="AdventureWorks" Name="Customer" />
      <DestinationEntity Namespace="AdventureWorks" Name="SalesOrder" />
    </Association>
  </MethodInstances>
</Method>

Ein vollständiges BDC-Modellbeispiel mit BulkAssociationNavigator erhalten Sie folgendermaßen:

  1. Laden Sie das Microsoft SharePoint 2010 SDK herunter.

  2. Extrahieren Sie die Datei bcs sample kit.zip aus %ProgramFiles%\Microsoft SDKs\SharePoint 2010\Samples\Business Connectivity Services in einen lokalen Ordner.

  3. Suchen Sie in dem Ordner, in den Sie die Dateien extrahiert haben, nach dem Ordner BDC Models for XML Snippets. Dieser Ordner enthält BDC-Modellbeispiele.