请问怎么去掉用WCF RIA Service和ADO.NET EF实体,产生的字符属性的多余空格?
意思就是说例如一个Domain service 返回
public IQueryable<BASE_TEST> GetBASE_TEST()
{
return this.ObjectContext.BASE_TEST;
}
这个BASE_TEST有很多数据库产生的多余的空格,
例如里面有 BASE_TEST.Name="XXX " 这样。。
我想在生成这个BASE_TEST是时候,就Trim掉再生成这个实体,怎么处理呢?
在数据库中最好不要保存存在多余的空格,这样程序容易出错,数据库对应字段最好设置为varchar,或者是nvarchar,这样就算你的长度是varchar(20),但是你实际保存的只有varchar(10),那么这个字段就是10.如果你设置为char(20),但是你实际保存的长度是char(10),那么这个长度还是20,后面10个长度读取出来的时候就是空格.
写视图trim
"XXX ".trim()="XXX"
trim()这个方法只能去掉前后的空格 不能去掉中间的空格
例如:
" XX X ".trim()="XX X"
应该是数据库的数据类型设置问题。
字符串用varchar,nvarchar,除非是那些固定长度且长度相等的字符串,例如:标记位之类的。才设置为char,nchar。
楼上的二位应该是正解