c# - 保存到数据库时字符串末尾的空格字符

标签 c# linq sqldatatypes

我的表中有一个 nvarchar(50) 字段。例如,当我保存 12 个字符长度 的字符串时,它会保存 50 个字符长度 的字符串。实际上它在字符串的末尾添加了一个空格字符。我应该选择其他数据类型吗?

tmp_Person.NameFamily = txt_NameFamily.Text.Trim();
PersonKBBSHDataContext.PersonInfos.InsertOnSubmit(tmp_Person);
PersonKBBSHDataContext.SubmitChanges();

当我在表的 NameFamily 字段中直接(在 SQL Server 中)保存一个字符串时,一切都很好。

最佳答案

我遇到了同样的问题。从 Mapping 类的 Nvarchar 属性中删除 .IsFixedLength() ,我的问题就解决了。

Me.Property(Function(t) t.Description).IsFixedLength().HasMaxLength(500)

替换为

Me.Property(Function(t) t.Description).HasMaxLength(500)

关于c# - 保存到数据库时字符串末尾的空格字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11152345/

相关文章:

c# - 在linux上使用mono运行VS编译的C#(串行连接)文件

c# - ASP.Net MVC5 和 StructureMap4 - 简化方法

C# 十进制到十六进制 & 十六进制到十进制/十六进制到 ascii 在 LINQ

android - TEXT数据类型会限制长度吗?

c# - 告诉 EF 6 忽略私有(private)属性

c# - 如何将日期对象添加到 C# 列表?

entity-framework - 给定要映射的 T 的属性名称,如何创建 Expression<Func<T, T>> ?

c# - 对列表进行排序,使特定值排在最前面

sql - 当我知道值不会超过 255 时,设置 tinyint 字段是否有优势?

c# - 将 .NET SqlType 与 MySQL 结合使用