创建ASP.NET时出现错误:路径与URL不符

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了创建ASP.NET时出现错误:路径与URL不符相关的知识,希望对你有一定的参考价值。

在VS.NET2003中创建一个新的ASP.NET工程出现:WEB访问失败:此项目的默认WEB访问模式为文件共享,但是无法从路径
"c:\inetpub\wwwwroot\WebApplication1"打开"http://localhost/WebApplication1"处的项目文件夹。返回的错误是:无法创建WEB项目"WebApplication1"。文件路径"c:\inetpub\wwwwroot\WebApplication1"与URL"http://localhost/WebApplication1"不符,这两者需要映射到相同的服务器位置。HTTP错误404:Not Found.
我已经排除了iis错误,只是我的默认网站80端口被占,改了别的端口。
另外我已经重装iis、.net好多遍了,并且已经排除了默认网站主目录名字以及路径不一致的问题,请高手出招,实在不想从新作系统啊!!!!!
高手注意:我是新建一个ASPNET的项目时遇到的这个问题,而不是要打开以前的项目,所以根本没有生成任何工程文件。而且我也试过打开以前的工程,就算复制到"c:\inetpub\wwwrot"或直接指向工程文件所在的目录也是出现此错误!

1\修改IIS服务器的目录,指向"WebApplication1"文件夹
2\将"WebApplication1"移动到Inetpub/wwwroot目录下
3\增加IIS中起用默认文档index.aspx
参考技术A 80被占改了别了端品.你的URL http://localhost/WebApplication1
这个地方怎么没有端口呢.
http://localhost:端口号/WebApplication1
这样才对吗?要不然IIS跟本起不到作用.

将 MySql 与 ASP.Net MVC 一起使用时出现实体框架 IndexAttribute 错误

【中文标题】将 MySql 与 ASP.Net MVC 一起使用时出现实体框架 IndexAttribute 错误【英文标题】:Entity Framework IndexAttribute error when Using MySql with ASP.Net MVC 【发布时间】:2017-06-25 13:29:13 【问题描述】:

我希望我的 mvc 应用程序连接到 MySQL 数据库,我从早上开始执行了以下步骤,但缺少一些东西。

    .Net 安装了MySQL 连接器(连接器ODBC 5.3) 已安装(MySQL 用于 Visual Studio 1.2.6) 按照教程进行 https://docs.microsoft.com/en-us/aspnet/identity/overview/getting-started/aspnet-identity-using-mysql-storage-with-an-entityframework-mysql-provider#configure-entityframework-to-work-with-a-mysql-database nuget 安装了 entityframework 6.1.3

现在当我运行网站并尝试注册时,它崩溃了

无法加载类型 'System.ComponentModel.DataAnnotations.Schema.IndexAttribute' 来自 程序集'EntityFramework,版本=6.0.0.0

我的 .csproj 文件包含

<Reference Include="EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL">
  <Private>True</Private>
  <HintPath>..\packages\EntityFramework.6.1.3\lib\net45\EntityFramework.dll</HintPath>
</Reference>
<Reference Include="EntityFramework.SqlServer, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL">
  <Private>True</Private>
  <HintPath>..\packages\EntityFramework.6.1.3\lib\net45\EntityFramework.SqlServer.dll</HintPath>
</Reference>
<Reference Include="Microsoft.CSharp" />
<Reference Include="MySql.Data">
  <HintPath>..\packages\MySql.Data.6.9.9\lib\net45\MySql.Data.dll</HintPath>
</Reference>
<Reference Include="MySql.Data.Entity, Version=6.9.8.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d, processorArchitecture=MSIL" />
<Reference Include="MySql.Data.Entity.EF6">
  <HintPath>..\packages\MySql.Data.Entity.6.9.9\lib\net45\MySql.Data.Entity.EF6.dll</HintPath>
</Reference>

我的应用参考包括:

实体框架 EntityFramework.SqlServer Microsoft.AspNet.Identity.EntityFramework MySql.Data MySql.Data.Entity.EF6

我也加了

MySql.Data.Entity 来自(MySQL for Visual Studio 1.2.6)中的程序集

我是 MVC 和 MySQL 的新手。所以,对可能出现的问题没有清晰的认识。

更新 有人在另一篇文章中建议我需要将其从 gacutil 中删除。现在 gacutil 说我需要管理员权限才能删除已经拥有的程序集。有解决方法吗?这是正确的解决方案吗?

【问题讨论】:

Using Asp.net Identity in with Enitity Framework throws Could not load type .Schema.IndexAttribute' from assembly 'EntityFramework, Version=6.0的可能重复 感谢 Ashish 的快速回复,但我不知道如何引用 6.1.3 而不是 6.0.0.0?在我的 .csproj 中它指向我想的最新的? 【参考方案1】:

嗯,我尝试的更新是正确的。所以问题是我在 gac 中有一个版本为 6.0.0.0 的重复 EntityFramework dll。为此,我必须在命令提示符处右键单击并选择“以管理员身份运行”,然后尝试卸载 dll。

轰!!这就是我所缺少的。

【讨论】:

以上是关于创建ASP.NET时出现错误:路径与URL不符的主要内容,如果未能解决你的问题,请参考以下文章

在 ASP.NET vNext 中使用 Ninject 时出现编译器错误 CS0246(未找到类型或命名空间)

关于ASP.NET中电子邮件形式不符

IIS Express 在调试 ASP.NET MVC 时出现拒绝访问错误

使用存储过程时出现 ASP.Net Core 3.1 MVC 错误

ASP.NET Core 依赖注入错误:尝试激活时无法解析服务类型 - 调用视图组件时出现错误 [重复]

ASP.NET - 在 VS 2017 中浏览 Nuget 包时出现“根级别的数据无效”错误