チュートリアル: 開発者用拡張機能を使用して Microsoft Dynamics CRM 2015 に接続されるコンソール アプリケーションの構築

 

公開日: 2016年11月

対象: Dynamics CRM 2015

このチュートリアルでは、Developer Extensions を使用して Microsoft Dynamics CRM 2015 に接続し、取引先担当者のレコードを作成する、簡単なコンソール アプリケーションの作成方法を示します。

このチュートリアルで生成されるコード例は、Walkthroughs\Portal\ConsoleAppWalkthrough フォルダーにあります。

このトピックの内容

事前バインド型の生成

Visual Studio での新しいコンソール アプリケーション プロジェクトの作成

事前バインド型の生成

  1. CrmSvcUtil.exe ツールを実行して、Microsoft.Xrm.Client.CodeGeneration 拡張機能を使用して、エンティティ クラスとサービス コンテキストを生成します。Microsoft Dynamics 365 のインスタンスを参照する Xrm.cs というファイルを作成するコマンド例を次に示します。 このコマンドの実行時に、Microsoft.Xrm.Client.CodeGeneration.dll ファイルは、CrmSvcUtil.exe ファイルと同じディレクトリ、またはシステムのグローバル アセンブリ キャッシュにある必要があります。 表示されている最初のコマンドは、設置型組織用です。 2 番目のコマンドは、CRM Online 組織用です。 いずれのコマンドも、改行なしで 1 つのコマンド ラインとして実行する必要があります。

        CrmSvcUtil.exe
        /codeCustomization:"Microsoft.Xrm.Client.CodeGeneration.CodeCustomization, Microsoft.Xrm.Client.CodeGeneration"/out:Xrm.cs /url:http://<myserver>/<myorg>/XRMServices/2011/Organization.svc 
        /domain:<mydomain> /username:<myusername> /password:<mypassword> /namespace:Xrm /serviceContextName:XrmServiceContext
    
        CrmSvcUtil.exe
        /codeCustomization:"Microsoft.Xrm.Client.CodeGeneration.CodeCustomization, Microsoft.Xrm.Client.CodeGeneration"
        /out:Xrm.cs /url:https://<mydomain>.api.crm.dynamics.com/XRMServices/2011/Organization.svc
        /username:<myusername>@<mydomain>.onmicrosoft.com /password:<mypassword> /namespace:Xrm /serviceContextName:XrmServiceContext
    

    ヒント

    CrmSvcUtil ツールは、SDK ダウンロードの Bin フォルダーから使用するか、または Microsoft.CrmSdk.CoreToolsNuGet パッケージをインストールすることによって使用できます。

Visual Studio での新しいコンソール アプリケーション プロジェクトの作成

  1. ConsoleAppWalkthrough という名前の新しいコンソール アプリケーションを作成します。.NET Framework 4.5.2 をまだインストールしていない場合は、.NET Framework のインストールから開発者パックを取得できます。

    Visual Studio でのプロジェクトの作成

  2. SDK\bin フォルダーから次の参照を追加します。 この手順と次の手順は、Microsoft.CrmSdk.ExtensionsNuGet パッケージをインストールすることによってスキップできます。

    • AntiXSSLibrary.dll

    • Microsoft.Crm.Sdk.Proxy.dll

    • Microsoft.Xrm.Client.dll

    • Microsoft.Xrm.Portal.dll

    • Microsoft.Xrm.Portal.Files.dll

    • Microsoft.Xrm.Sdk.dll

  3. .NET からの次の参照を追加します。

    • System.IdentityModel.dll

    • Microsoft.ServiceBus.dll

    • System.Data.Services.dll

    • System.Data.Services.Client.dll

    • System.Runtime.Serialization.dll

  4. コンソール プロジェクトで、.NET Framework 4.5.2 クライアント プロファイルではなく、.NET Framework 4.5.2 をターゲット フレームワークとして指定してください。 ソリューション エクスプローラーで、[ConsoleAppWalkthrough] プロジェクトを選択して [Alt-Enter] をクリックし、プロジェクトのプロパティを確認します。

    ターゲット フレームワークの設定

  5. Visual Studio でプロジェクトを右クリックし、[追加] をクリックして、[既存の項目] をクリックします。

  6. 事前バインド型の生成時に作成した "xrm.cs" ファイルを選択します。

  7. プロジェクトをもう一度右クリックし、[追加] をクリックして、[新しい項目] をクリックします。

  8. オプションから [アプリケーション構成ファイル] を選択し、[追加] をクリックします。

  9. 特定の接続文字列で App.config 構成ファイルを編集します。

    <?xml version="1.0"?>
    <configuration>
      <configSections>
        <section name="microsoft.xrm.client" type="Microsoft.Xrm.Client.Configuration.CrmSection, Microsoft.Xrm.Client"/>
      </configSections>
      <connectionStrings>   <add name="Xrm" connectionString="Server=http://crmserver/contoso; Domain=CONTOSO; Username=Administrator;Password=pass@word1"/></connectionStrings>
      <microsoft.xrm.client>
        <contexts default="Xrm">
          <add name="Xrm" type="Xrm.XrmServiceContext, Xrm" connectionStringName="Xrm"/>
        </contexts>
      </microsoft.xrm.client>
      <startup>
        <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5.2"/>
      </startup>
    </configuration>
    
  10. 手順 1 でプロジェクトを作成したときに使用した名前空間 (この例では "Xrm") に、using ステートメントを追加します。

  11. Program クラスに次のコードを追加します。

    static void Main(string[] args)
    {
        var xrm = new XrmServiceContext("Xrm");
    
        WriteExampleContacts(xrm);
    
        //Create a new contact called Allison Brown.
        var allisonBrown = new Xrm.Contact
        {
            FirstName = "Allison",
            LastName = "Brown",
            Address1_Line1 = "23 Market St.",
            Address1_City = "Sammamish",
            Address1_StateOrProvince = "MT",
            Address1_PostalCode = "99999",
            Telephone1 = "12345678",
            EMailAddress1 = "allison.brown@example.com"
        };
    
        xrm.AddObject(allisonBrown);
        xrm.SaveChanges();
    
        WriteExampleContacts(xrm);
    
        Console.WriteLine("Press any key to exit.");
        Console.ReadKey();
    }
    
    /// <summary>
    /// Use all contacts where the email address ends in @example.com.
    /// </summary>
    private static void WriteExampleContacts(XrmServiceContext xrm)
    {
        var exampleContacts = xrm.ContactSet
            .Where(c => c.EMailAddress1.EndsWith("@example.com"));
    
        //Write the example contacts.
        foreach (var contact in exampleContacts)
        {
            Console.WriteLine(contact.FullName);
        }
    }
    
  12. ソリューションのデバッグとテストを行います。 これで、Dynamics 365 組織に取引先担当者が作成されます。

関連項目

Microsoft Dynamics CRM 2015 用ポータル開発者ガイド
Dynamics CRM 2015 のポータルのチュートリアル
チュートリアル: Developer Extensions を使用して Microsoft Dynamics CRM 2015 に接続された Web アプリケーションの構築

© 2017 Microsoft. All rights reserved. 著作権