Schritt 3: Erstellen des Lösungsmanifests

Letzte Änderung: Dienstag, 27. Juli 2010

Gilt für: SharePoint Server 2010

Die Lösungsmanifestdatei (OIR.config) ist die Hauptdatei, die von der Business Connectivity Services-Clientlaufzeit zum Konfigurieren Ihrer erweiterten codebasierten Microsoft Outlook-Lösung verwendet wird. In dieser Datei beschreiben Sie die Benutzeroberfläche, das Verhalten und die Geschäftslogik im Zusammenhang mit den externen Elementen in einer erweiterten codebasierten Outlook-Lösung. Beispielsweise können Sie in der Lösungsmanifestdatei angeben, dass für den Outlook-Elementtyp Kontakt eine bestimmte Benutzeroberfläche verwendet (z. B. ein Part für externe Daten) und eine bestimmte Methode im externen System (z. B. UpdateCustomerInstance(ID, NewInstanceValues)) aufgerufen werden soll, um ein Element zu aktualisieren, falls es in Outlook geändert wird.

In der Lösungsmanifest werden zunächst der spezifische Outlook-Datentyp angegeben, dem der primäre externe Inhaltstyp zugeordnet wird, wie z. B. Kontakt oder Aufgabe.

Es wird empfohlen, eine einfache Lösungsmanifestdatei zu erstellen. In der Lösungsmanifestdatei ist Folgendes möglich:

  • Geben Sie allgemeine Lösungseinstellungen wie den eindeutigen Bezeichner (ID) sowie einen Anzeigenamen für die Lösung an.

  • Führen Sie für jeden externen Inhaltstyp, der in einem Outlook-Ordner angezeigt wird, folgende Schritte aus:

    • Definieren Sie alle Felder des externen Inhaltstyps, die in Outlook eingeblendet werden sollen, und geben Sie an, wie diese den für Outlook spezifischen Feldern zugeordnet werden sollen. Felder, die nicht genau übereinstimmen, können ebenfalls angegeben werden, müssen aber mit einem bestimmten Outlook-Datentyp definiert werden, der von Outlook erkannt wird (z. B. Text, YesNo oder DateTime). Diese benutzerdefinierten Felder werden erstellt und im Formularbereich von Outlook eingeblendet.

    • Geben Sie den Namen und weitere Details des Outlook-Ordners an, in dem sich die externen Elemente befinden werden.

Voraussetzungen

  1. Schritt 1: Erstellen des BDC-Modells

  2. Schritt 2: Erstellen eines Cacheabonnements

Erstellen eines Lösungsmanifests

Verwenden Sie eine der folgenden beiden Vorgehensweisen zum Erstellen des Lösungsmanifests.

Ansatz mit Tools

Verwenden Sie das Tool zum Generieren von BCS-Artefakten zum Erstellen des Lösungsmanifests basierend auf dem BDC-Modell.

Manueller Ansatz

  1. Suchen Sie die Vorlage: Lösungsmanifest (Oir.config), die im SharePoint 2010 SDK enthalten ist, kopieren Sie sie, und speichern Sie sie dann im Ordner Solution Artifacts als OIR.config.

  2. Öffnen Sie die Datei OIR.config zum Bearbeiten in einem XML-Editor. Falls Sie die XML-Datei in Microsoft Visual Studio öffnen, fügen Sie das deklarative OIR.config-Schema (SolutionManifestDefinitions.xsd) und SolutionManifestDeclarativeExtensions.xsd an. Auf diese Weise steht IntelliSense-Funktionalität bereit, die Ihnen hilft, gültige Einträge zu erstellen. Weitere Informationen finden Sie in der Dokumentation zum "SolutionManifestDefinitions"-Schema und SolutionManifestDeclarativeExtensions-Schema.

  3. Ersetzen Sie die mit EnterX markierten Werte im XML-Code durch gültige Werte. Nachfolgend sehen Sie ein XML-Beispiel, das den möglichen XML-Code nach der Bearbeitung zeigt.

    <?xml version="1.0" encoding="utf-8"?>
    <SolutionDefinition xmlns:Declarative="https://schemas.microsoft.com/office/2009/05/BusinessApplications/Manifest/DeclarativeExtensions" 
    xmlns="https://schemas.microsoft.com/office/2009/05/BusinessApplications/Manifest" xmlns:xsl="http://www.w3.org/2001/XMLSchema-instance">
      <SolutionSettings SolutionId="ContosoSalesManager" SolutionDisplayName="Contoso Sales Manager" SolutionVersion="1.0.0.0"/>
      <ContextDefinitionGroups>
        <ContextDefinitionGroup xsl:type="Declarative:DeclarativeContextDefinitionGroup" ItemType="OutlookContact" >
          <ContextDefinition xsl:type="Declarative:DeclarativeContextDefinition" ContentType="OutlookContactCustomer">
            <Entities>
              <Entity Name="Customer" EntityTypeName="Customer" EntityTypeNamespace="AdventureWorksContoso" Description="Customer">
                <View Name="PrimaryEntityNameInContext" ViewName="GetCustomerById" Description="GetCustomerById" IsPrimary="true">
                  <PromotedProperty Name="CustomerId" ViewInstancePath="CustomerId" OfficeItemPropertyName="CustomerId" ReadOnly="true" />
                  <PromotedProperty Name="Title" ViewInstancePath="Title" OfficeItemPropertyName="Title" ReadOnly="false" />
                  <PromotedProperty Name="FirstName" ViewInstancePath="FirstName" OfficeItemPropertyName="FirstName" ReadOnly="false" />
                  <PromotedProperty Name="MiddleName" ViewInstancePath="MiddleName" OfficeItemPropertyName="MiddleName" ReadOnly="false" />
                  <PromotedProperty Name="LastName" ViewInstancePath="LastName" OfficeItemPropertyName="LastName" ReadOnly="false" />
                  <PromotedProperty Name="Email1Address" ViewInstancePath="EmailAddress" OfficeItemPropertyName="Email1Address" ReadOnly="false" />
                  <PromotedProperty Name="BusinessTelephoneNumber" ViewInstancePath="Phone" OfficeItemPropertyName="BusinessTelephoneNumber" ReadOnly="false" />
                  <PromotedProperty Name="ModifiedDate" ViewInstancePath="ModifiedDate" OfficeItemPropertyName="ModifiedDate" ReadOnly="false" />
                </View>
              </Entity>
            </Entities>
            <OfficeItemCustomizations xsl:type="OutlookItemCustomizations" ItemTypeDisplayName="Contoso Customer" MessageClass="IPM.Contact.AWWSCustomer">
              <OfficeItemProperties>
                <OfficeItemProperty Name="CustomerId" PropertyName="CustomerId" PropertyType="OutlookInteger" />
                <OfficeItemProperty Name="Title" PropertyName="Title" PropertyType="OutlookText" />
                <OfficeItemProperty Name="FirstName" PropertyName="FirstName" PropertyType="OutlookText" />
                <OfficeItemProperty Name="MiddleName" PropertyName="MiddleName" PropertyType="OutlookText" />
                <OfficeItemProperty Name="LastName" PropertyName="LastName" PropertyType="OutlookText" />
                <OfficeItemProperty Name="Email1Address" PropertyName="Email1Address" PropertyType="OutlookText" />
                <OfficeItemProperty Name="BusinessTelephoneNumber" PropertyName="BusinessTelephoneNumber" PropertyType="OutlookText" />
                <OfficeItemProperty Name="ModifiedDate" PropertyName="ModifiedDate" PropertyType="OutlookDateTime" />
              </OfficeItemProperties>
              <OutlookFolder Name="ContosoCustomers" FolderDisplayName="Contoso Customers" NativeType="FolderContacts" SubscriptionName="AdventureWorksContosoCustomerSubscription" FolderName="ContosoCustomerFolderID" CanCreate="true" CanUpdate="true" CanDelete="false">
              </OutlookFolder>
            </OfficeItemCustomizations>
          </ContextDefinition>
        </ContextDefinitionGroup>
      </ContextDefinitionGroups>
    </SolutionDefinition>
    
  4. Speichern und schließen Sie die Datei.

Damit haben Sie die einfache Datei OIR.config erfolgreich erstellt, die für die erweiterte codebasierte Outlook-Lösung erforderlich ist.

Weitere Schritte

Schritt 4: Implementieren der erweiterten codebasierten Outlook-Lösung