Asp.net mvc 代码首次迁移时出现外键错误:Can';t形下降柱
我在实体框架、迁移(数据库更新)和外键注释方面遇到了问题。 我收到的错误消息位于以下位置:Asp.net mvc 代码首次迁移时出现外键错误:Can';t形下降柱,asp.net-mvc,entity-framework,foreign-keys,entity-framework-migrations,Asp.net Mvc,Entity Framework,Foreign Keys,Entity Framework Migrations,我在实体框架、迁移(数据库更新)和外键注释方面遇到了问题。 我收到的错误消息位于以下位置:updatedatabase–verbose Applying automatic migration: 201604060846578_AutomaticMigration. IF EXISTS (SELECT name FROM sys.indexes WHERE name = N'IX_OutreachSet_TargetContact' AND object_id = object_id(N'[db
updatedatabase–verbose
Applying automatic migration: 201604060846578_AutomaticMigration.
IF EXISTS (SELECT name FROM sys.indexes WHERE name = N'IX_OutreachSet_TargetContact' AND object_id = object_id(N'[dbo].[DiagnosticsSets]', N'U'))
DROP INDEX [IX_OutreachSet_TargetContact] ON [dbo].[DiagnosticsSets]
IF EXISTS (SELECT name FROM sys.indexes WHERE name = N'IX_OutreachSet_TargetContact' AND object_id = object_id(N'[dbo].[MotivationSets]', N'U'))
DROP INDEX [IX_OutreachSet_TargetContact] ON [dbo].[MotivationSets]
DECLARE @var0 nvarchar(128)
SELECT @var0 = name
FROM sys.default_constraints
WHERE parent_object_id = object_id(N'dbo.MotivationSets')
AND col_name(parent_object_id, parent_column_id) = 'TargetContact';
IF @var0 IS NOT NULL
EXECUTE('ALTER TABLE [dbo].[MotivationSets] DROP CONSTRAINT [' + @var0 + ']')
ALTER TABLE [dbo].[MotivationSets] DROP COLUMN [TargetContact]
[……]
The object 'PK_dbo.MotivationSets' is dependent on column 'TargetContact'.
ALTER TABLE DROP COLUMN TargetContact failed because one or more objects access this column.
我只想有一个0:0…1的关系。就这样
我试着像这个例子中那样做
我想我自己解决了。 我只是这样做了: 如果还有人能告诉我为什么会这样我会很高兴的
谢谢大家! 我想我自己解决了。 我只是这样做了: 如果还有人能告诉我为什么会这样我会很高兴的
谢谢大家! 您可能以默认情况下迁移无法处理的方式更改了模型-例如更改标识状态、FK重命名。通过删除所有内容并重新开始,可以避免重命名,所有内容都是从头开始创建的。如果您不能从头开始怎么办?您可能以默认情况下迁移无法处理的方式更改了模型-例如更改标识状态、FK重命名。通过删除所有内容并重新开始,可以避免重命名,所有内容都是从头开始创建的。如果你不能从头开始怎么办?
public class OutreachSet
{
[Key]
[Display(Name = "Target Contact")]
public string TargetContact { get; set; }
[Display(Name = "Next Outreach Step")]
public string NextOutreachStep { get; set; }
public virtual MotivationSet MotivationSet { get; set; }
}
public class MotivationSet
{
[Key, ForeignKey("OutreachSet")]
public string TargetContact { get; set; }
public string PowerMastery { get; set; }
[Required]
public virtual OutreachSet OutreachSet { get; set; }
}