web-dev-qa-db-ja.com

SQL ServerテーブルからC#クラスを生成する

ADO.net Entity Frameworkを使用してプロジェクトにテーブルを追加せずに、SQL Serverでテーブルのクラスを生成する方法はありますか?

enter image description here

public class Approval
{
        public long Id { get; set; }
        public long? FormId { get; set; }
        public long? DesignationId { get; set; }
        public DateTime? CreatedOn { get; set; }
}

Entity Frameworkを使用する場合は、 Database First アプローチの使用を検討する必要があります。

Sql ServerスキームをVSのクラスにインポートする他の簡単で高速な方法は次のとおりです。

  1. JSONクエリとしてselectを作成します。

    SELECT * JSON AUTOの承認から

  2. クリップボードの結果から1行をコピーします。

    [{"Id":1、 "FormId":10、 "DesignationId":100、 "CreatedOn": "2000-01-01T00:00:00"}、{"Id":2、 "FormId":20、 "DesignationId":200、 "CreatedOn": "2000-01-01T00:00:00"} ...]

  3. Visual Studioに貼り付け:Edit-> Paste Special-> Paste Json As Classes

enter image description here

10
Alpha75

テーブル、ストアドプロシージャなど、生成するPOCOが多い場合:

https://www.codeproject.com/Articles/892233/POCO-Generator

POCO generator

または単純な単一クエリの場合:

https://visualstudiomagazine.com/articles/2012/12/11/sqlqueryresults-code-generation.aspx

Simple POCO generator

6
Tomasito

このオンラインツールは、SQLテーブルからクラスを生成します。クラスは、CREATE TABLEOracleMYSQLPOSTGRESQLおよびSQLiteデータベース内のMS-SQLスクリプトに基づいてクラスになります。 C#およびその他のプログラミング言語で。

https://codverter.com/src/sqltoclass

enter image description here

5
jonathana