Error message: modelBuilder.Entity() .HasOptional(m=>m.WorkflowStep) .WithMany() .HasForeignKey(m=>m.WorkflowStepFK); //IsRequired public virtual int WorkflowStepFK { get; set; } public virtual WorkflowStep WorkflowStep { get; set; } \tSystem.Data.Entity.Edm.EdmAssociationType: : Multiplicity conflicts with the referential constraint in Role 'RoutingRule_WorkflowStep_Target' in relationship 'RoutingRule_WorkflowStep'. Because all of the properties in the Dependent Role are non-nullable, multiplicity of the Principal Role must be '1'. Solution is: