我创建了一个小型的ASP.NET Core(2.0)项目,我认为它会以旧的ASP.NET 5的方式输出文件 - 但显然不是。
在过去,我会得到一个web.config
,bin/
和我的.dll
,以及我在部署到服务器时需要的其他内容。
对于新项目,我仍然得到web.config
,但我的所有依赖项都紧挨着它。
我尝试将/p:WebPublishMethod
从FileSystem
更改为Package
,MSDeploy
但仍然没有/bin
- 文件夹。
为什么我的所有文件都在我的发布文件夹的根目录中?
答案 0 :(得分:4)
发布ASP.NET Core项目将创建一个可以按原样部署的输出结构。输出格式适用于自托管,并通过IIS托管。
没有bin
文件夹只是因为不需要一个。它是已发布的输出,而不仅仅是中间构建输出。发布目录中的所有文件都是托管应用程序所必需的。
答案 1 :(得分:1)
我只是将网站从VS2017切换到VS2019,并遇到同样的问题。我发现VS2019具有全新的发布设置,从VS2017过来时似乎没有正确初始化这些设置。并非预编译,而是在所有未编译的.aspx.cs文件中进行发布。
要修复此问题,请按照以下步骤操作...
现在就像在VS2017中一样,带有dll文件的bin目录。