在数据层应用程序项目和数据库项目之间转换
在创建数据层应用程序 (DAC) 项目或数据库项目后,您可能希望在这两种项目类型之间相互转换。 例如,如果您开始时处理 DAC 项目,但随后需要使用此 DAC 项目中不支持的语言构造,则您可能希望更改项目类型。
提示
有关更多信息,请参见 Microsoft 网站上的以下页面:数据层应用程序中支持的功能。
同样,如果您的数据库项目仅使用 DAC 项目支持的对象,则您可能会决定转换项目。 更改项目类型后,您必须先执行一个或多个手动步骤,才能成功生成和部署更新的项目。
主题内容
更改项目类型
转换为数据库项目所必需的手动步骤
转换为 DAC 项目所必需的手动步骤
更改项目类型
更改项目类型
在“解决方案资源管理器”中,单击要更改其类型的项目。
在**“项目”菜单上,单击“ProjectName 属性”**。
在**“项目设置”选项卡的“项目版本”中,单击要应用于此项目的新类型。 例如,若要将此项目更改为数据层应用程序项目,请单击“数据层应用程序”**。
在确认对话框中,单击**“是”即可更改此类型,并重新加载此项目。 如果单击“否”**,此项目类型会还原到其先前的值。
转换为数据库项目所必需的手动步骤
在将数据层应用程序项目类型更改为数据库项目后,您应解决以下问题:
问题 |
用户操作 |
注释 |
---|---|---|
不必要的 .sqlpolicy 文件 |
可选 |
因为 .sqlpolicy 文件的生成操作设置为“DACPropertiesFile”,所以,如果项目不是 DAC 项目,则在生成和部署该项目时,这些文件将被忽略。 如果您不想将此项目更改回 DAC 项目,则可以移除这些文件。 |
缺少部署属性文件 (.sqldeployment) |
可选 |
在部署数据库项目之前,您至少需要添加一个 .sqldeployment 文件。 |
缺少 SQLCMD 变量文件 (.sqlcmdvars) |
可选 |
如果您要定义其他 SQLCMD 变量以用于您的项目中,则可以添加 Database.sqlcmdvars 文件。 |
缺少权限文件 (.sqlpermissions) |
可选 |
如果要为数据库中的对象定义权限,则可以添加 Database.sqlpermissions 文件。 |
Database.sqlsettings 中的目录属性太少。 |
可选 |
DAC 项目显示其 Database.sqlsettings 文件中的目录属性太少。 如果不想接受其他属性的默认值,您应在生成和部署您的项目之前对其进行检查。 |
将属性文件添加到数据库项目中
如果创建了新的数据库项目,则该项目包含四个属性文件:Database.sqlcmdvars、Database.sqldeployment、Database.sqlpermissions 和 Database.sqlsettings。 在转换 DAC 项目时,结果项目中只有 Database.sqlsettings。 您必须手动将其他文件添加到您的项目中。
将属性文件添加到数据库项目中
在“解决方案资源管理器”中,右击您的数据库项目的**“属性”文件夹,指向“添加”,然后单击要添加到数据库项目的属性文件。 例如,若要添加 Database.sqldeployment,请单击“部署配置”**。
在**“添加新项”**对话框中,验证要添加的属性模板是否突出显示。
在**“名称”**中,指定要赋予此文件的名称。
单击**“添加”**。
调整要更改的任何属性值。
在**“文件”菜单中,单击“保存文件名”**,其中文件名是您要更改的文件的名称。
若要查看或更新属性文件中包含的属性,请展开“解决方案资源管理器”中的**“属性”**文件夹,然后双击要查看或更新的属性文件。
转换为 DAC 项目所必需的手动步骤
在将数据库项目类型更改为 DAC 项目后,您应解决以下问题:
问题 |
用户操作 |
注释 |
---|---|---|
缺少 ServerSelection.sqlpolicy 文件 |
必需 |
数据库项目不包含任何 .sqlpolicy 文件。 在部署 DAC 项目之前,必须创建一个 .sqlpolicy 文件。 |
不支持的对象类型 |
必需 |
DAC 项目仅支持可能存在于数据库项目中的一个对象子集。 例如,不支持 XML 索引。 有关更多信息,请参见 Microsoft 网站上的以下页面:数据层应用程序中支持的功能。 在更改项目类型以标识项目中定义的任何不受支持的对象类型后,您应该生成 DAC 项目。 有关更多信息,请参见如何:生成数据库项目以生成经过编译的架构 (.dbschema) 文件。 |
不必要的属性文件 |
可选 |
DAC 项目不使用 .sqlcmdvars、.sqldeployment 或 .sqlpermissions 属性文件。 如果您不想将您的项目类型更改回数据库项目,则可以安全移除这些文件。 |
数据层应用程序项目的策略文件
将 .sqlpolicy 文件添加到您的 DAC 项目中
在“解决方案资源管理器”中,右击 DAC 项目的**“属性”文件夹,指向“添加”,然后单击“Sql 策略”**。
在**“添加新项”**对话框中,验证要添加的 .sqlpolicy 模板是否突出显示。
在**“名称”**中,指定要赋予此文件的名称。
单击**“添加”**。
在部署您的项目之前,创建将要执行的验证策略。 有关更多信息,请参见 Configuring the Server Selection Policy(配置服务器选择策略)。
在**“文件”菜单上,单击“保存文件名”**。