C# 启用迁移-ContextTypeName错误:找不到参数
我按照本教程练习MVC-4: 我不是在做同样的例子。我只是把它作为我自己尝试的指南 我遇到了这个问题: 在我打开包管理器控制台之后 尝试为我的上下文启用迁移后,出现以下错误:C# 启用迁移-ContextTypeName错误:找不到参数,c#,.net,asp.net-mvc,visual-studio-2010,asp.net-mvc-4,C#,.net,Asp.net Mvc,Visual Studio 2010,Asp.net Mvc 4,我按照本教程练习MVC-4: 我不是在做同样的例子。我只是把它作为我自己尝试的指南 我遇到了这个问题: 在我打开包管理器控制台之后 尝试为我的上下文启用迁移后,出现以下错误: PM> Enable-Migrations -ContextTypeName MvcAuction.Models.AuctionDBContext Enable-Migrations : A parameter cannot be found that matches parameter name 'ContextT
PM> Enable-Migrations -ContextTypeName MvcAuction.Models.AuctionDBContext
Enable-Migrations : A parameter cannot be found that matches parameter name 'ContextTypeName'.
At line:1 char:35
+ Enable-Migrations -ContextTypeName <<<< MvcAuction.Models.AuctionDBContext
+ CategoryInfo : InvalidArgument: (:) [Enable-Migrations], ParameterBindingException
+ FullyQualifiedErrorId : NamedParameterNotFound,Enable-Migrations
PM>启用迁移-ContextTypeName MvcAuction.Models.AuctionDBContext
启用迁移:找不到与参数名称“ContextTypeName”匹配的参数。
第1行字符:35
+为将来可能遇到相同问题的人启用迁移-ContextTypeName。
我已经通过使用不带-ContextTypeName的Enable Migrations解决了这个问题。对于那些将来可能遇到相同问题的人。
我已经通过使用不带-ContextTypeName的EnableMigrations解决了这个问题
找不到与参数名称匹配的参数
“ContextTypeName”
在我看来,您使用的是旧版本的Entity Framework(4.3?),它没有实现该参数。适合我,我使用EF5
PM>启用迁移-contexttypename test3.Models.UsersContext
正在检查上下文是否以现有数据库为目标。。。
为项目test3启用了代码优先迁移
找不到与参数名称匹配的参数
“ContextTypeName”
在我看来,您使用的是旧版本的Entity Framework(4.3?),它没有实现该参数。适合我,我使用EF5
PM>启用迁移-contexttypename test3.Models.UsersContext
正在检查上下文是否以现有数据库为目标。。。
为project test3启用了代码优先迁移。我也有同样的问题。我通过NuGet将EntityFramework升级到5.0.0版来修复它。如果您面临EntityFramework.5.0.0的问题,请尝试重新安装它。我也有同样的问题。我通过NuGet将EntityFramework升级到5.0.0版来修复它。如果您遇到EntityFramework.5.0.0的问题,请尝试重新安装它。“启用迁移-ContextTypeName MvcMovie.Models.MovieDBContext”
MvcMovie更改为MvcYourApplicationName。“启用迁移-上下文类型名称MvcMovie.Models.MovieDBContext”
MVC将更改为MvcYourApplicationName。我在“快速脏”ASP.net网站上工作时遇到了同样的错误
在ASP.Net网站中,非页面类放在App_代码目录中。
它们被编译成一个单独的程序集
可能是程序包管理器未设法(!)在此“应用程序代码”程序集中找到上下文类型名称(错误消息看起来很奇怪)
通过将模型和上下文类移动到另一个类库项目中,我解决了这个问题
- 它起作用了
- 那里干净多了
我不知道MVC4会有什么问题,但我的经验可以帮助另一个Web表单开发人员…我在使用“快速脏”ASP.net网站时也遇到了同样的错误
在ASP.Net网站中,非页面类放在App_代码目录中。
它们被编译成一个单独的程序集
可能是程序包管理器未设法(!)在此“应用程序代码”程序集中找到上下文类型名称(错误消息看起来很奇怪)
通过将模型和上下文类移动到另一个类库项目中,我解决了这个问题
- 它起作用了
- 那里干净多了
我不知道MVC4会有什么问题,但我的经验可以帮助另一个Web表单开发人员…编辑:上下文类型可能不存在,或者没有放在模型名称空间下
语法是
启用迁移-ContextTypeName您的DataContextType的名称
DataContextType的名称是添加控制器时添加的上下文
因此,您可以输入如下所示的全部内容:
或使用现有的,如图所示:
是的
启用迁移-ContextTypeName MVCAPApplication4.Models.MVCAPApplication4Context
启用迁移-ContextTypeName MVCAPApplication4.Models.ExternalLogin
语法:Enable Migrations仅在项目中只有一个上下文时才起作用
在进行编辑时遇到了这个问题:似乎上下文类型可能不存在或未放置在模型命名空间下
语法是
启用迁移-ContextTypeName您的DataContextType的名称
DataContextType的名称是添加控制器时添加的上下文
因此,您可以输入如下所示的全部内容:
或使用现有的,如图所示:
是的
启用迁移-ContextTypeName MVCAPApplication4.Models.MVCAPApplication4Context
启用迁移-ContextTypeName MVCAPApplication4.Models.ExternalLogin
语法:Enable Migrations仅在项目中只有一个上下文时才起作用
在使用时遇到此问题,我也遇到了同样的问题,但通过在Nuget Package Manager控制台的下拉菜单中选择项目,然后删除完全限定路径,使问题得以解决,因此:
PM> Enable-Migrations -ContextTypeName ApplicationDbContext
我也遇到了同样的问题,但通过在Nuget Package Manager控制台的下拉菜单中选择项目,然后删除完全限定路径,使其正常工作,因此:
PM> Enable-Migrations -ContextTypeName ApplicationDbContext
更新数据库:找不到与参数名称“ConfigurationTypeName”匹配的参数。
第1行字符:17
参数名称不匹配的错误表明命令版本不支持该参数。这可能是由于VS项目上安装的EF工具版本造成的。在我的例子中,我有两个项目,一个安装了EF 6.x,另一个安装了EF Core,显然EF Core优先,所以在使用EF 6.x时,我必须使用EntityFramework\Update-D