使用Entity Framework保存空字符串,用白色空格保存字符串?

JAN*_*JAN 1 c# sql-server string entity-framework

我在表中有一列是:

QuestionDescription nchar(150)
Run Code Online (Sandbox Code Playgroud)

表的名称是Questions.当我在实体中放入Questions一个空字符串时,意思是:

Questions questionObj = new Questions();
questionObj.QuestionDescription = string.Empty();
Run Code Online (Sandbox Code Playgroud)

实体框架在数据库中保存150个空格的字符串.

为什么?

我试图把一个空字符串,但它总是放150个空格.

知道为什么吗?

谢谢

juh*_*arr 5

那是因为类型nchar不是nvarchar.有了nchar它总是会与你指定的字符的准确数量的值,所以这将是由DB,不是EF充足的空间.如果你想在数据库中找到一个实际为空的字符串,那么你应该使用nvarchar它来保存字符串值,直到你给出的大小,而不是将它们填充到给定的大小.