Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/290.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/34.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 将varchar值“null”转换为数据类型int时,转换失败_C#_Asp.net_Sql_Sql Server_Sql Server 2008 - Fatal编程技术网

C# 将varchar值“null”转换为数据类型int时,转换失败

C# 将varchar值“null”转换为数据类型int时,转换失败,c#,asp.net,sql,sql-server,sql-server-2008,C#,Asp.net,Sql,Sql Server,Sql Server 2008,我正在从数据库获取值到aspx页面。当获取一列的值时,该列抛出一个值,如 null,402,2912,2909,2910,2913,2911,2914,2915,2388,2389,2390, 2391,2964,2965,2392,2393,2394,2395,2397 现在它抛出一个异常 将varchar值“null”转换为数据时,转换失败 输入int 但是我想要列中除null以外的所有其他值 是否有任何方法将此“null”转换为“0”,但所有其他值仍应存在。将您的数据类型设置为null而

我正在从数据库获取值到aspx页面。当获取一列的值时,该列抛出一个值,如

null,402,2912,2909,2910,2913,2911,2914,2915,2388,2389,2390,
2391,2964,2965,2392,2393,2394,2395,2397
现在它抛出一个异常

将varchar值“null”转换为数据时,转换失败 输入int

但是我想要列中除null以外的所有其他值


是否有任何方法将此“null”转换为“0”,但所有其他值仍应存在。

将您的数据类型设置为null而不是int以允许转换的int值为null,或者在sql select语句中,您可以这样做:ISNULLyourcolumn,0以将null转换为0。

我将我的类型声明为int?变量这是一个可为null的int类型。 这样可以避免出现异常,如果需要,可以轻松地将值转换为0

if (value == null)
   value = 0;

由于您说希望在结果中包含除null值以外的所有值,因此可以在select语句中使用where子句对其进行筛选

SELECT * FROM COLUMN WHERE COLUMN_VALUE IS NOT NULL
或者,如果您使用Linq to EF:

from x in yourObjectContext.yourColumns where x != null

我认为您正在尝试在数据库中从NULL更改为0。 那你应该试试这个-

SELECT CASE WHEN columnName IS NULL THEN '0' ELSE columnName END FROM tableName  

您还没有展示您正在使用的任何代码-有很多方法可以实现这一点,所有这些方法都有不同的处理空值的方法。请给我们更多的信息。代码在哪里?我认为您应该使用int.TryParse而不是Convert.ToInt32。我想您正在使用它。请提供如何获取此值null的代码,4022912290929102913291129142915238823892390、23912964296523922993239423952392397在SQL脚本中,您可以使用。。IsNullcolumn,0