不是全部,这不是下面评论中列出的这个问题的重复。
How to create structure with null value support?
*这个问题是如何使用If Then来测试如何测试... 并且Vb.Net被标记了,因为我确信这也发生在vb.net中。
如果整数为空,如何检查c#:
尝试过:
if (INIT_VID == null)
{
}
但是这会抛出一个警告,指出表达式的结果总是为'false',因为'int'类型的值永远不会等于'int'类型的'null'。
那么你如何测试呢?谢谢!
所以有人要求查看代码......希望负面选民不会对投票感到高兴:
来自mvc FORM
<input type="hidden" id="INITVID" name="INIT_VID" class="control-label col-md-2" />
在mvc CONTROLLER中
public ActionResult Edit(int INIT_VID,....
if (INIT_VID != 0) //Added this after finding out that you have to test for zero
{
if (INIT_VID != vRS_REQUEST.RES_VEH_ID)
...
编辑:我想我错了,也许是在公共行动元素中宣布INIT_VID ......
再次感谢您的帮助!
答案 0 :(得分:3)
那么你如何测试呢?
你没有,编译器告诉你原因。 int
不是可以为空的类型,因此永远不会成为null
,因此条件将始终具有相同的结果。
您可能会想到int?
(Nullable<int>
的缩写),可以为null
。在这种情况下,测试可能类似于:
if (!INIT_VID.HasValue)
{
// it was null
}
答案 1 :(得分:0)
int? VAR_NAME
if (VAR_NAME == null)
答案 2 :(得分:0)
int永远不能为null。相反,如果没有初始化,它将保持默认值0。因此,您的情况将始终返回false。
但是,如果要查找可为空的整数类型,请尝试使用int?。