C# 中奇妙的函数–5. Nullable 静态类
前段时间忙于各处奔波没有写博,今天想和大家再来看看一个奇妙的函数。
首先假设你不得不处理一些已有的代码,里面用到了nullable(可空值类型)的变量, 你必须要用这变量与不可空变量比较.
使用 <, >, <=, >= 来比较 nullable 值
看下面的代码:
1: int
http://www.cyqdata.cn/cnblogs/article-detail-52604
周末浅说--未将对象引用设置到对象的实例(System.NullReferenceException)
System.NullReferenceException:未将对象引用设置到对象的实例,这是一个新鸟,中鸟,老鸟都避不开的错误。
下面基础的解释一下这错误:
1:本质上的错误:
object a;//a是Null对象protected void Page_Load(object sender, Even
http://www.cyqdata.cn/cnblogs/article-detail-42025
GoF著作中未提到的设计模式(3):Null Object
Null Object模式的目的包括:
1. 当对象提供者无法提供指定类型的对象时, 返回一个什么都不做的对象, 这对调用者是透明的,并且调用者不用判断获得的对象是否为null了,当然,对象提供者必须告知调用者(通过约定等).
2. 有时候需要传递一个什么都不做的某个类型的对象给合作方. 例如某个函数需要实现特定接口的对象(通过参数传入)进行某些操作, 该函数的调用者在某些情况下希望不进行这些操
http://www.cyqdata.cn/cnblogs/article-detail-41367
[你必须知道的.NET]第二十一回:认识全面的null
本系列文章导航[你必须知道的.NET] 开篇有益[你必须知道的.NET] 第一回:恩怨情仇:is和as[你必须知道的.NET] 第二回:对抽象编程:接口和抽象类[你必须知道的.NET] 第三回:历史纠葛:特性和属性[你必须知道的.NET] 第四回:后来居上:class和struct[你必须知道的.NET] 第五回:深入浅出关键字---把new说透[你必须知道的.NET] 第六回:深入浅出关键字--
http://www.cyqdata.cn/cnblogs/article-detail-40411
再议.Net中null的使用规范
在上一文中,论述两个.Net Framework对null应用不够合理的例子。大家评论中,给出了不少指导性意见,这里也对.Net中null的使用规范作一下总结。
1. Empty代表瓶子是空的,null代表瓶子都没有
首先要明确你的“瓶子”是什么,也就是你代码的逻辑是建立在什么基础或前提之上。如果这个前提不存在,是否为正常的,或是可接受的情况。如果是,则应该允许返回
http://www.cyqdata.cn/cnblogs/article-detail-40185
引用类型赋值为null与加速垃圾回收
在标准的Dispose模式中(见前一篇博客“C#中标准Dispose模式的实现”),提到了需要及时释放资源,却并没有进一步细说让引用等于null是否有必要。
有一些人认为等于null可以帮助垃圾回收机制早点发现并标识对象是垃圾。其他人则认为这没有任何帮助。是否赋值为null的问题首先在方法的内部被人提起。现在,为了更好的阐述提出的问题,我们来撰写一个Winform窗体应用程
http://www.cyqdata.cn/cnblogs/article-detail-36072
[WPF - 之一问一答系列] 如何从WPF的WebBrowser控件中获得WebResponse内容?为何WebBrowser控件的Navigated事件参数NavigationEventArgs的WebResponse属性始终为null?
问:
如何从WPF的WebBrowser控件中获得WebResponse内容?为何WebBrowser控件的Navigated事件参数NavigationEventArgs的WebResponse属性始终为null?
我们在一个WPF的WebBrowser的Navigated事件中,尝试去输出NavigationEventArgs e的WebResponse属性,他始终是null。
http://www.cyqdata.cn/cnblogs/article-detail-36070
谈谈Nullable<T>的类型转换问题
本篇文章讨论可空值类型(Nullable<T>)的转换,却确地说是如何将一种类型的值对象转换成相应的可空值。这来源于今天我们的一个成员遇到的一个小问题,我经过一些整理写了这篇文章。虽然没有什么技术含量可言,也希望对某些读者带来帮助。 目录 一、四种典型的值类型转换方式 二、当类型转换遭遇Nullable<T> 三、将基于Nullab
http://www.cyqdata.cn/cnblogs/article-detail-35075
可为空的值类型(Nullable<T>)需要注意的地方
值类型是不可以被赋值为null的,但有时候我们却需要简单的值类型被设置为null,比如一个查询界面上有很多的查询条件,查询条件可以使用也可以留空,这是从UI收集查询参数信息传递到后台执行查询的时候,我们如果约定某个参数为null时,就认为用户没有使用该查询参数。 第一,它是一个结构类型,值类型 其实下面的这个变量声明就是可为空的值类型int? number = 100;
.csharpcode,
http://www.cyqdata.cn/cnblogs/article-detail-25062
MVC ListBoxFor raises “value cannot be null” exception
I am trying to use the Html.ListBoxFor helper to show a list box and return the selected Id. Is there a problem with the dataValueField not being a string? If the SelectList contained in the model
http://www.cyqdata.cn/cnblogs/article-detail-10440
.Net令人纠结的Null
从我们刚学.Net编程起,我们的程序不断被从天而降NullReferenceException打断。直到今天,我们仍然时常为C#的Null或者VB的Nothing困惑。什么情况下我们该返回null,如果参数是null代表什么。许多类型,有两种不同意义的空状态,一种是null,一种是其本身或其某个属性集合中没有元素,这就更容易产生误用。常听有人说,Null这个概念在编程语言中根本不应该存在。但是,从C++到Java到.Net,它从未离开过。
最近,注意到.Net Framework在读取程序配置文件的一个小Bug。比如我在配置文件中,自定义了名为ReviewPeriod的节点:
<configuration>
<configSections>
<section name="reviewPeriod" type="WordPadTest.Revie
http://www.cyqdata.cn/cnblogs/article-detail-364
sql-isnull方法的使用
在程序开发过程中,程序员用到最多的估计就是数据库了,几乎在任何一个地方都会和数据库打交道,数据库的增加,删除,更新,查询,都必须用到sql语句或者是存储过程,归根结底还是试用sql数据库,但是在敲写相关sql语句时,我们经常会遇到一些空的字符串或者是字段,这就给我们对数据库造成一定的麻烦,系统经常会提示“某值null不能转换”“插入的值不能为空”等等诸如此类的提示,isnull函数会帮助你搞定这些小菜。 Isnull 函数主要作用是将为空的值替换为指定值,如果不为空返回检查类型的返回值,isnull的语法: Isnull (check_expression , replacement_value) 参数c
http://www.cyqdata.cn/cnblogs/article-detail-219