Entity Framework を使用して、既存のデータベースからエンティティ クラス (モデル)をリバースエンジニアリングする際に、カラムの論理名をドキュメント コメントとして出力する方法を紹介します。
/// <summary>
/// テーブルの論理名
/// </summary>
public class Person
{
/// <summary>
/// カラムの論理名
/// </summary>
public string Name { get; set; }
}
Entity Framework を使用すると既存のデータベースからエンティティ クラスを簡単に自動生成することができますが、論理名(コメント)が出力されないため不便に感じることがあります。
この記事ではプロパティのドキュメント コメントにカラムの論理名を出力する方法を紹介します。
環境
- Windows 10
- Visual Studio 2019
- SQL Server 2017
- .NET Framework 4.7
Entity Framework Designer (.edmx) に論理名を読み込む
まずは Entity Framework Designer (.edmx) に論理名を読み込みます。
拡張機能が提供されていますので、インストールしてから Entity Framework Designer を更新することで、下記イメージのようにドキュメントの概要に論理名が自動的に読み込まれるようになります。
Entity Designer Documentation Generator
https://marketplace.visualstudio.com/items?itemName=mthamil.EntityDesignerDocumentationGenerator&ssr=false
エンティティ クラスに論理名を出力する
下記の記事を参考に T4 ファイル (.tt) を編集します。
EntityFramework t4 template - XML documentation
https://stackoverflow.com/questions/20522496/entityframework-t4-template-xml-documentation
最後に
今までは皆さんの記事にお世話になってばかりで、自分が投稿するのはこれが初めてです。
わかりにくいところがあれば指摘ください。改善します。