2

プラグインまたはワークフローでの Web サービスの使用について同僚と議論しています

Web サービスには認証が必要なため、Microsoft が提案するように動的エンティティを使用することがベスト プラクティスであると彼は言います。

wsdl と強力な型付きエンティティを使用すると、よりクリーンでエラーが発生しにくくなり、認証の遅延は無視できると思います

また、CRM 2011 への更新を予定しています。

それで、私たちのどちらが正しいですか?

4

2 に答える 2

1

厳密に型指定されたエンティティと動的エンティティはどちらも Web サービスを使用し、どちらも認証を必要とするため、実質的な違いはありません。

Crm 2011 へのアップグレードに関しては、Web サービスが 2011 年に変更されたため、再コーディングしたい場合は可能ですが、両方を再コーディングする必要があります。または、再コーディングせずに Crm 4 Web サービスを引き続き使用することもできます。繰り返しますが、本当の違いはありません。

Microsoft から、動的エンティティを好むと​​言っているものは見つかりませんでした。Microsoft Dynamics CRM 2011を使用した開発のベスト プラクティスでは、実際には状況に応じて両方を使用するように指示されています。

コードが記述された時点では不明なエンティティと属性をコードで処理する必要がある場合は、Entity クラスを使用します。ただし、コンパイル時にエンティティ名と属性名を検証できないため、この柔軟性には欠点があります。コード時にエンティティが既に定義されている場合は、CrmSvcUtil ツールを使用して生成できる事前バインド型を使用する必要があります。詳細については、「コードでアーリー バインド エンティティ クラスを使用する」を参照してください。

これは主にスタイルと好みによるものだと思います (正しい人はいません)。個人的には動的エンティティの方が好きです。

強く型付けされた - 長所:

  • インテリセンス
  • デザイン\コンパイル時の検証
  • すべてのエンティティ、フィールド、および関係の名前について Crm を確認する必要はありません
  • コンパイルされた実行可能ファイルには、型のプロパティ、メソッド、およびイベントを呼び出すために必要なコードが含まれています

強く型付けされた - 短所:

  • WSDL を生成する必要があります (そして、Crm が変更されるたびに再生成し続けます)。
  • 生成されたクラスは、最後にチェックしたときにコード分析に合格しませんでした
  • 動的エンティティを使用して新しいレコードを作成するには、通常、数行で済みます。数行を書くために何百もの強く型付けされたクラスを生成しなければならないのは、やり過ぎのように思えます。
于 2012-08-04T15:17:07.037 に答える
1

動的エンティティと厳密に型指定されたエンティティの両方で認証が必要になります。2つの間の認証に遅延があるとは思いません。

(ISV のように) 他の CRM 組織に適用できる一般的なコードを作成している場合は、動的エンティティが最適です。それ以外の場合は、強く型付けされたエンティティがより良いオプションであることをお勧めします。コードがよりクリーンで読みやすくなるためです。

どちらのコード セットも、CRM 2011 で再作業する必要があります。

ではごきげんよう、

于 2012-08-02T13:41:54.983 に答える