Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/sql-server-2008/3.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
Subsonic 如何从现有的ActiveRecord.cs文件中获取数据库架构?_Subsonic - Fatal编程技术网

Subsonic 如何从现有的ActiveRecord.cs文件中获取数据库架构?

Subsonic 如何从现有的ActiveRecord.cs文件中获取数据库架构?,subsonic,Subsonic,我已经得到了一个使用亚音速风暴的现有项目的源代码。我(有限!)的理解是,亚音速通过对现有数据库进行反向工程来生成代码。不幸的是,我没有用于此项目的数据库 我确实有上次编译时的ActiveRecord.cs文件。如何计算数据库模式,以便复制数据库 这听起来像亚音速3。根据我查看ActiveRecord.cs文件的情况,这里有几个地方可以帮助您入门。您可能希望自己创建一个小型数据库,在其上运行亚音速,并查看ActiveRecord.cs中生成的内容 在ActiveRecord.cs文件中,每个表都有

我已经得到了一个使用亚音速风暴的现有项目的源代码。我(有限!)的理解是,亚音速通过对现有数据库进行反向工程来生成代码。不幸的是,我没有用于此项目的数据库


我确实有上次编译时的ActiveRecord.cs文件。如何计算数据库模式,以便复制数据库

这听起来像亚音速3。根据我查看ActiveRecord.cs文件的情况,这里有几个地方可以帮助您入门。您可能希望自己创建一个小型数据库,在其上运行亚音速,并查看ActiveRecord.cs中生成的内容

在ActiveRecord.cs文件中,每个表都有一个分部类。分部类将从IActiveRecord继承,并且很可能是表的名称

在类中,您将找到一个名为“KeyName()”的函数,该函数将返回表的主键列名。亚音速需要处理和生成代码的表的主键

查找名为“外键”的区域。如果这个表有外键,您将找到一个对应于每个外键的属性,类似于“publicIQueryable OtherTableNames”。所以这个表应该有一个名为“OtherTableNameID”的列;检查生成的外键表的分部类以确保

在外键区域的正下方,可以找到此表的非外键列的属性。您可以从属性数据类型(例如,字符串可能是char(x)或varchar(x))中猜测列的数据类型