Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/82.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从sql多个表(带外键的相关表)生成c#类_C#_Sql_Sql Server_Class_Generate - Fatal编程技术网

如何从sql多个表(带外键的相关表)生成c#类

如何从sql多个表(带外键的相关表)生成c#类,c#,sql,sql-server,class,generate,C#,Sql,Sql Server,Class,Generate,我想从sql查询生成C#类。我可以只为一个表执行此操作,但我有一个标题表和多个详细信息表。我想为所有这些类生成类,它们与pk和fk相关。我无法评论,因此答案是这样的 这个答案并不完美,因为它是针对oracle的。我使用下面的代码运行查询并访问结果。您可以很容易地从中生成类 DataTable dataTable = new DataTable(); using (OracleConnection oracleConnection = new OracleConne

我想从sql查询生成C#类。我可以只为一个表执行此操作,但我有一个标题表和多个详细信息表。我想为所有这些类生成类,它们与pk和fk相关。

我无法评论,因此答案是这样的

这个答案并不完美,因为它是针对oracle的。我使用下面的代码运行查询并访问结果。您可以很容易地从中生成类

        DataTable dataTable = new DataTable();
        using (OracleConnection oracleConnection = new OracleConnection(constr))
        {
            oracleConnection.Open();
            OracleCommand oracleCommand = new OracleCommand(query, oracleConnection);
            OracleDataAdapter da = new OracleDataAdapter(oracleCommand);

            //TODO: This seems to get all the data. We just want 1 row or no rows and only column info..
            da.Fill(dataTable);

            oracleConnection.Close();//Close just in case
        }

        foreach (DataColumn column in dataTable.Columns)
        {
            //Use these properties to generate a class
            column.ColumnName;
            column.DataType;
            column.AllowDBNull; 
            column.DefaultValue;
        }

你能详细说明一下用法吗?我将此用于一个表,但我想用于相关表。我有与外键相关的表,但我不能为它们这样做。您是否考虑过使用诸如Dapper或Entity Framework之类的ORM工具,或者您是否试图避免额外的开销?这里没有正确或错误的答案,只是好奇。谢谢你给我时间,非常感谢。