Freigeben über


XML-Codeausschnitt: Modellieren einer AssociationNavigator-Methode

Letzte Änderung: Mittwoch, 21. April 2010

Gilt für: SharePoint Server 2010

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

Beispiel

<Method IsStatic="false" Name="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] = @CustomerID</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="@CustomerID">
      <TypeDescriptor TypeName="System.Int32" IdentifierName="CustomerID" 
                      IdentifierEntityName="Customer" 
                      IdentifierEntityNamespace="AdventureWorks" 
                      ForeignIdentifierAssociationName="Customers Sales Orders" 
                      Name="CustomerID" />
    </Parameter>
    <Parameter Direction="Return" Name="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="AssociationNavigator" 
                 ReturnParameterName="Customers Sales Orders" 
                 Name="Customers Sales Orders" 
                 DefaultDisplayName="Customers Sales Orders">
      <SourceEntity Namespace="AdventureWorks" Name="Customer" />
      <DestinationEntity Namespace="AdventureWorks" Name="SalesOrder" />
    </Association>
  </MethodInstances>
</Method>

Ein vollständiges BDC-Modellbeispiel mit AssociationNavigator 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.