我具有数据库的DBML文件,并希望从该文件生成SQL数据库文件。
谢谢
[在数据上下文上有一个名为CreateDatabase()的方法,您可以使用。
http://msdn.microsoft.com/en-us/library/system.data.linq.datacontext.createdatabase.aspx
我不知道有没有可用的实用程序可以做到这一点,因此对于SO答案还有很多工作要做。
但是,在大多数情况下,这没什么大不了的。 DBML文件是用XML编写的;它应该很容易通过Linq-to-xml读取。然后,只需将xml中值的SQL命令拆分为脚本文件即可。然后运行脚本。 (也可以通过XSLT转换来完成)
<Table Name="dbo.Person" Member="Persons">
成为
CREATE TABLE Persons (
和
<Column Name="PersonID" Type="System.Int32" DbType="Int NOT NULL IDENTITY"
IsPrimaryKey="true" IsDbGenerated="true" CanBeNull="false">
</Column>
<Column Name="AddressID" Type="System.Int32" DbType="Int NOT NULL"
CanBeNull="false"></Column>
成为:
PersonID Int NOT NULL,
AddressID int NOT NULL,
依此类推。