Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/16.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
Asp.net mvc MVC4 Azure部署可以';找不到网页或WebMatrix引用_Asp.net Mvc_Azure - Fatal编程技术网

Asp.net mvc MVC4 Azure部署可以';找不到网页或WebMatrix引用

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

我正试图通过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]


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的最快方法。