In meiner Datenbank habe ich eine Tabelle: < /p>
Code: Select all
CREATE TABLE [dbo].[Invitation]
(
[Id] INT NOT NULL IDENTITY(1, 1),
[Name] NVARCHAR(100) NOT NULL,
[Subject] NVARCHAR(100) NOT NULL,
[Body] NVARCHAR(max) NOT NULL,
CONSTRAINT PK_Invitation PRIMARY KEY CLUSTERED ([Id] ASC),
)
Wenn ich DOTNE EF DBCONTEX -SCAFFOLD ausführe, wird die folgende C# -Klasse erstellt:
Code: Select all
public partial class StudyInvitation
{
public int Id { get; set; }
public string Name { get; set; } = null!;
public string Subject { get; set; } = null!;
public string Body { get; set; } = null!;
}
Warum setzt es die Zeichenfolgen auf null! ? Es scheint, als wäre String.Empty eine bessere Wahl für nicht Null Nvarchar. In Code setzen Sie eine Zeichenfolge auf null und ein Festlegen einer Zeichenfolge auf null! Ich verstehe also nicht, warum sie sich dafür entschieden haben. Ich würde gerne wissen, dass ich, wenn ich mit meinen Modellen arbeite, weiß, ob es besser ist, sie in Null zu initialisieren! ist aus irgendeinem Grund. Danke!