У меня была модель под названием Tarefa (Task на португальском языке):Любые внешние ключи должны быть обязательно необходимы?
public class Tarefa
{
[Key]
public int ID { get; set; }
[Required]
public string Assunto { get; set; }
public int ClienteID { get; set; }
public virtual Cliente Cliente { get; set; }
public int ProcessoID { get; set; }
public virtual Processo Processo { get; set; }
}
ClienteID и ProcessoID (не обязательно)
мне не нужно, чтобы выбрать их, когда я создаю новый Tarefa.
После строительных лесов, добавить миграции и обновление базы данных-определение таблицы показывают:
CREATE TABLE [dbo].[Tarefas] (
[ID] INT IDENTITY (1, 1) NOT NULL,
[Assunto] NVARCHAR (MAX) NOT NULL,
[ClienteID] INT NOT NULL,
[ProcessoID] INT NOT NULL,
CONSTRAINT [PK_dbo.Tarefas] PRIMARY KEY CLUSTERED ([ID] ASC),
CONSTRAINT [FK_dbo.Tarefas_dbo.Clientes_ClienteID] FOREIGN KEY ([ClienteID]) REFERENCES [dbo].[Clientes] ([ID]) ON DELETE CASCADE,
CONSTRAINT [FK_dbo.Tarefas_dbo.Processoes_Pasta (se ajuizado)] FOREIGN KEY ([ProcessoID]) REFERENCES [dbo].[Processoes] ([ID]) ON DELETE CASCADE,
);
Почему эти 2 столбца не являются NULL?
Поскольку вы использовали 'int'. Если вы хотите, чтобы они были обнуляемыми, используйте тип с нулевым значением 'int?' –