質問: データベーススキームを(効率と視覚性の観点から)どのように設計する必要があるのか、自分には疑問に思っています。 私はAngular 2でASP.NET Coreアプリケーションを開発しており、 Entity Framework Core ( `"Microsoft.EntityFrameworkCore": "1.0.0"` )を使用しています。これはお気に入りのORMだからです。私は間違いなくSQL Server 2012を好みますが、他のデータベース管理システムで利用できるスキームを設計するためのより良いオプションがあれば、PostgreSQLのようなものに切り替えることができます。 ただし、EntityFrameworkCoreは、EDMXデザイナーによるDataContext(およびそのすべてのPOCOクラス)の設計をサポートしなくなりました。 データベースを視覚的に設計し、POCOクラス(およびTypeScriptクラスも)を自動生成する方法を教えてください。 スキームを設計するための優れたツールを推奨できますか? (少なくともSQL Server Management Studioよりも便利です。EDMXデザイナーが気に入りました) 編集2019-03-28 ------------ SQL Server Management Studioの最新の変更ログ(18.0プレビュー7)が発表した**データベースダイアグラムは非推奨**であるため、できるだけ早くデータベースを視覚化する代替手段が本当に必要です。 編集2019-04-03 ------------ 誰かがこの質問つまずく可能性があり、誰もここに行く...私の質問のための答えを提供していない、まだので: VS拡張:SQLへのLINQのためのエンティティの開発者ORMデザイナを 編集2019-07-15 ------------ SSMS 19.1変更ログから: > データベースダイアグラムがSSMSに再び追加されました。 > >
回答: データベースから始めることを好む場合は、データベースを作成するデータベースプラットフォームに最も便利な設計ツールを使用してから、EFコマンドを使用してデータベースからモデルとコンテキストを作成することができます。以前のバージョンのEFの移行と同じように、パッケージマネージャコンソールからコマンドを実行できます。 ``` Scaffold-DbContext "Server=yourServer;Database=yourDb;Trusted_Connection=True;" Microsoft.EntityFrameworkCore.SqlServer -OutputDir Models ``` 公式文書は既存データベースからのモデルのリバースエンジニアリングをカバーしています