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


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

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

 

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

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

 

例:HCMWorker.WHSExtension

例:ContactPerson.ApplicationSuiteExtension

 

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

Naming guidelines for model extensions

https://docs.microsoft.com/en-us/dynamics365/unified-operations/dev-itpro/extensibility/naming-guidelines-extensions

-> Naming extensions

 

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


Comments (2)

  1. DKobayashi says:

    接頭子とモデル名だけでは一般的であり、アプリケーションのアップグレードの際に標準のコード変更と重複する可能性が高いので、プロジェクト略号等任意の文字列を含む名称とした方が良いと思います。

    1. コメントありがとうございます。
      ご指摘のとおり、市販されている書籍等でも独自の略語など任意の文字列を含むことが推奨されていることは認識しており、私も賛成です。
      本記事では、公開されている公式ドキュメントを情報ソースとして、あくまで一例として記載させていただきました。
      実際に開発・運用を担当されているパートナー様からの実践的なご指摘・ご意見はとても貴重です。引継ぎ今後もよろしくお願いいたします。

Skip to main content