Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/visual-studio-2012/2.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
Visual studio 2012 数据工具数据库项目:自动创建漂亮的文件夹结构_Visual Studio 2012_Sql Server Data Tools_Dacpac_Data Tier Applications - Fatal编程技术网

Visual studio 2012 数据工具数据库项目:自动创建漂亮的文件夹结构

Visual studio 2012 数据工具数据库项目:自动创建漂亮的文件夹结构,visual-studio-2012,sql-server-data-tools,dacpac,data-tier-applications,Visual Studio 2012,Sql Server Data Tools,Dacpac,Data Tier Applications,当我将DACPAC导入VS SS DT项目时,它为我创建了一个非常好的文件夹结构:我的所有模式都在一个名为“Security”的文件夹下定义,然后每个模式都有自己的命名文件夹,其中包含名为“Tables”、“storageprocedures”等文件夹。但是,如果我右键单击项目名称并选择Add>Table,新表刚刚添加到项目的根目录中。这似乎一点也不正确。有没有办法让VS遵守导入DACPAC时创建的有组织的文件结构?我发现最好的解决方法不是进行VS端更改,而是进行SQL Server端更改。在对

当我将DACPAC导入VS SS DT项目时,它为我创建了一个非常好的文件夹结构:我的所有模式都在一个名为“Security”的文件夹下定义,然后每个模式都有自己的命名文件夹,其中包含名为“Tables”、“storageprocedures”等文件夹。但是,如果我右键单击项目名称并选择Add>Table,新表刚刚添加到项目的根目录中。这似乎一点也不正确。有没有办法让VS遵守导入DACPAC时创建的有组织的文件结构?

我发现最好的解决方法不是进行VS端更改,而是进行SQL Server端更改。在对所讨论的数据库进行更改之后,我将与SQL Server和VS项目上的实际数据库进行模式比较。当我根据差异进行更新时,会保持良好的结构。

这是因为您将表添加到根文件夹级别(例如,右键单击项目名称)。相反,右键单击名为“Tables”的文件夹,然后可以在该文件夹下添加表定义

您是否尝试过通过项目的SQL对象资源管理器窗口添加它?这可能会自动实现您想要的功能,而且无论文件/文件夹结构如何,它都有点像SQL Server Management Studio。我在SQL Server对象资源管理器窗格中右键单击项目的可编程性>存储过程文件夹,并选择“添加新存储过程…”。在给存储过程一个
格式的名称并单击“确定”之后,表示我的过程的脚本仍然位于项目的根目录中。不过,谢谢你的建议……我很有希望!如果nice文件夹结构仅用于开发过程中的友好用户体验,则在SQL Server对象资源管理器(而不是解决方案资源管理器)中使用与SSMS相同的nice文件夹结构。是的,但如果使用VS+SSDT进行源代码控制(作为CI/CD过程的一部分),则需要能够将更改推送到数据库服务器,不要把他们拉回来。