Asp.net mvc MVC4 Azure部署可以';找不到网页或WebMatrix引用
我正试图通过GitHub将站点自动部署到Azure,在提交到主分支后,Azure会将其拾取并尝试部署,但我收到一条“部署失败”消息,其中包含以下错误: App_Start\AuthConfig.cs(1,21):错误CS0234:类型或命名空间 命名空间“Microsoft.Web”中不存在名称“WebPages”(是 您缺少程序集引用吗?) [C:\DWASFiles\Sites\xxxxx\VirtualDirectory0\site\repository\xxxxx.UI.Web\xxxxx.UI.Web.csproj] 及 Controllers\AccountController.cs(18,7):错误CS0246:类型或 找不到命名空间名称“WebMatrix”(是否缺少使用 指令或组件引用?) [C:\DWASFiles\Sites\xxxxx\VirtualDirectory0\site\repository\xxxxx.UI.Web\xxxxx.UI.Web.csproj]Asp.net mvc MVC4 Azure部署可以';找不到网页或WebMatrix引用,asp.net-mvc,azure,Asp.net Mvc,Azure,我正试图通过GitHub将站点自动部署到Azure,在提交到主分支后,Azure会将其拾取并尝试部署,但我收到一条“部署失败”消息,其中包含以下错误: App_Start\AuthConfig.cs(1,21):错误CS0234:类型或命名空间 命名空间“Microsoft.Web”中不存在名称“WebPages”(是 您缺少程序集引用吗?) [C:\DWASFiles\Sites\xxxxx\VirtualDirectory0\site\repository\xxxxx.UI.Web\xxxx
MVC4(以及WebMatrix/WebPages依赖项)通过NuGet安装在my UI.Web项目中,而不是从GAC加载。在程序集引用上,“复制本地”设置为true。知道我为什么会遇到这些部署问题吗?您是否尝试过使用NuGet package restore进行部署?然后Azure应该在部署过程中下载所有依赖项,GitHub不会被二进制文件弄乱 只需右键单击解决方案并点击“启用NuGet Package Restore”。使用已创建的解决方案目录中的.nuget文件夹和项目目录中的packages.config提交 --
至于您当前的问题-您可以删除GitHub的链接,这将很有帮助。可能您在Visual Studio中使用了default.ignore,这确实会阻止提交二进制文件。由于这是一个GitHub抓取和部署,您确定您的包和/或bin文件实际上处于源代码管理之下并被推送到存储库中吗?即使copy local设置为true,如果您没有将它们推送到repo中…它们也不会被发现为copyTrue,但是因为它们是通过NuGet添加的,所以它不会在部署时安装这些包吗?NuGet只会将包下载到包文件夹中,并将适当的引用添加到您的项目中,以便在构建时,编译器知道去哪里获取它们。NuGet与Azure拉取您的分支并编译源代码没有任何关系。请检查解决方案中的packages文件夹是否已提交到存储库,以便Azure可以通过Github获得实际的NuGet下载抱歉,答复太晚,但packages文件夹也已提交到源代码管理,并包含所有必需的包。我并没有推断Azure会去下载它们,只是因为它们是NuGet软件包,所以安装在软件包目录中,Azure应该已经可以使用它们了。使用FTP从Azure下载项目表单,然后查看本地的错误。在我看来,这是找到bug的最快方法。