0

不知何故,我的解决方案和项目的路径/完整路径有所不同。

我的解决方案(“customerreportingnet”)的 Path 属性是:

C:\Users\cshannon\Documents\Visual Studio 2013\Projects\customerreportingnet\customerreportingnet.sln

该解决方案下的唯一项目是网站(“ http://localhost/EMS/customerreportingnet/ ”)。

该网站项目的完整路径是这样的:

C:\EnhancedMonthlySalesReporting\customerreportingnet\customerreportingnet

为什么解决方案和项目位置会不同?

我在设置中做错了吗?我从 .zip 文件中下载了这些文件,并将它们解压缩到 C:\EnhancedMonthlySalesReporting\

然后我在 IIS 中创建了一个虚拟目录,将其映射到 C:\EnhancedMonthlySalesReporting\customerreportingnet\customerreportingnet,并为其命名为“EMS”。

然后在VS中我以这种方式打开网站(解决方案/项目):

文件 > 打开网站...

然后我打开 IIS > EMS

当我这样做时,我看不到“项目”下的任何文件——在解决方案资源管理器中可见的只是解决方案和项目名称——它们下面没有子文件夹或文件。但是当我右键单击解决方案“customerreportingnet”并选择“打开网站”,然后回复“打开网站(这将关闭当前解决方案)”,一切都比较好-我可以右键单击项目( “ http://localhost/EMS/customerreportingnet/ ”),选择在浏览器(Internet Explorer)中查看,站点运行。

C:\Users\cshannon\Documents\Visual Studio 2013\Projects\customerreportingnet\ 中的唯一文件是:

customerreportingnet.sln customerreportingnet.v12.suo

C:\EnhancedMonthlySalesReporting\customerreportingnet\customerreportingnet 拥有这些文件以及更多文件(以及 beaucoup 文件夹)。

我应该尝试将解决方案路径重置为 C:\EnhancedMonthlySalesReporting\customerreportingnet\customerreportingnet,还是这只是一个奇怪的问题,但不是问题?

如果是这样,这是否像更改该属性值一样容易,还是会搞砸?

4

2 回答 2

2

将我的解决方案和项目存储在不同的位置是不是一个坏主意?

  • 解决方案是项目的“容器” 。它们在本地文件系统中的位置并不重要。所以在这种情况下,它是“好的”。

    有一些由一些“你以前做过的项目”组成的解决方案上下文并不罕见。因此,您可以“组织”一个由位于其他地方的项目(来自其他“解决方案”)以及新项目组成的“新”解决方案。

  • 但是,一旦进入Source Control,无论是TFS还是GIT,都将很重要 - 它们(解决方案中的项目)必须位于同一个父文件夹中才能轻松处理。所以在这种情况下,它是“坏的”。

    TLDR;仍然有有效的源代码控制“不同文件夹中的项目”的方法 - 每个都是它自己独立的“存储库”。但是您必须手动/单独进行同步、合并等。

如果我正确地关注了您的帖子,我认为您正在寻找的是Add...,而不是Open...- 您想将现有项目或网站添加到解决方案中。

取决于您所追求的以及您正在处理的文件:

  • 如果Project压缩文件中有 a ,则可以Add Existing Project,依此类推...

不确定为什么需要在 IIS 中进行操作 - 您可以在 Visual Studio (IIS Express) 中进行调试。

或者,您可以Publish从 Visual Studio 中获取您的网站/应用程序并定位一个本地文件系统文件夹,然后您可以在 IIS(如果安装了本地 IIS)中设置该文件夹 - 这样,您就有了一个“开发”(VS)和“暂存” "(在 IIS 中映射的发布文件夹)环境中的本地计算机。

嗯...

于 2017-03-03T01:58:17.080 回答
1

提取代码并在 Visual Studio 中打开项目后。

如果你打开一个项目,Visual Studio 会自动创建一个解决方案文件(你也可以直接打开一个解决方案文件)。单击save all或保存解决方案文件后,它会将其保存到以前的位置或默认位置。

由于您之前没有保存文件,因此 Visual Studio 会将其保存到默认位置:

 C:\Users\cshannon\Documents\Visual Studio 2013\Projects\[ProjName]\[ProjName].sln

如果您希望其他开发人员能够轻松打开您的项目。(尤其是当您开始在 1 个解决方案中包含多个项目时),您希望将解决方案文件包含在项目位置中。否则每个开发人员都必须自己创建这个解决方案文件,这是一件烦人且繁琐的工作。

由于 dotnet core 的最佳实践文件结构是这样的:

/root
   /src <== contians all the projects per folder
      /project1
         /project1.csproj
         /etc*
      /project2
   /[ANameForSolution].sln (so directly inside the proj folder, next to src)

人们使用的旧习惯比较平淡:

/root
   /project1
   /project2
   /YourSolution.sln

最佳实践,将所有内容移到/src是因为最近项目的根目录已经有很多(配置)文件,这样您可以使根目录更干净一些。

于 2017-04-21T12:42:29.817 回答