c#里指定的转换无效

textbox3显示数据库中的年龄,数据类型是nchar,启动的时候修改就会出现这个问题,求各位拉我一把

nchar是字符串,你用GetInt32肯定会出错了,而且nchar会用空白填充剩余的空间,出现空白内容。改为nvarchar,但是直接改数据库类型为nvarchar由于之前是nchar的,之前生成的空白字符串也会存在,需要用sql语句replace(stuage,' ','')替换掉空白字符才行

然后改类型为int,这样才能用GetInt32获取数据。

要么就按照上面的2句GetString【注意Trim起到空白】,而不是GetInt32

有帮助麻烦点个采纳【本回答右上角】,谢谢~~

年龄直接定义为整形不是更好吗?应该是你文本框里面有空格。因为nchar是固定长度的,会自动加空格填满10个字符。先用trim删除空格再转换就正常了。

img

img

img