Jaa


"拡張しようとする要素の名前".Extension という名前は避けるべき

例えば、HCMWorker テーブルの Extension を作る際、ただ単に HCMWorker.Extension という名前にしてしまうと、

他のモデル中で既に同じ名前の Extension が存在していた場合など、Conflict のリスクがとても高くなるので避けた方がよいです。

 

以下のどちらかを名前に含むことが推奨されています。

  • 接頭辞(その Extension が関連付けられている)
  • モデル名(その Extension 要素が存在する)

 

例:HCMWorker.WHSExtension

例:ContactPerson.ApplicationSuiteExtension

 

詳細は、以下の公式ドキュメントをご参照ください。

Naming guidelines for model extensions

/en-us/dynamics365/unified-operations/dev-itpro/extensibility/naming-guidelines-extensions

-> Naming extensions

 

※ Class extensions や metadata 要素についてのネーミング ガイドラインも記載されています。

Comments

  • Anonymous
    May 11, 2018
    接頭子とモデル名だけでは一般的であり、アプリケーションのアップグレードの際に標準のコード変更と重複する可能性が高いので、プロジェクト略号等任意の文字列を含む名称とした方が良いと思います。
    • Anonymous
      May 13, 2018
      コメントありがとうございます。ご指摘のとおり、市販されている書籍等でも独自の略語など任意の文字列を含むことが推奨されていることは認識しており、私も賛成です。本記事では、公開されている公式ドキュメントを情報ソースとして、あくまで一例として記載させていただきました。実際に開発・運用を担当されているパートナー様からの実践的なご指摘・ご意見はとても貴重です。引継ぎ今後もよろしくお願いいたします。