动软.net代码生成器 生成的model层代码后面加个问号是什么意思啊?
动软.net代码生成器 生成的model层代码后面加个问号是什么意思啊?/// </summary>
public DateTime? AddTime
{
set { _addtime = value; }
get { return _addtime; }
}
/// <summary>
///
/// </summary>
public int? CheckType
{
set { _checktype = value; }
get { return _checktype; }
} --------------------编程问答-------------------- 数据库里 是可以为空的 --------------------编程问答-------------------- 类型后面加问号 表示可以为空! --------------------编程问答-------------------- 一般都是针对int类型,不用管它不影响程序运行 --------------------编程问答-------------------- 那为什么以前生成代码的时候没有发现有问号呢? --------------------编程问答-------------------- 哥们有时间去看看书
泛型那一章节 --------------------编程问答-------------------- 比如时间问题你一般赋值为空要报错吧,但是你在那个类型上加一个?就不会错了。
是不是有点通俗。 --------------------编程问答--------------------
"?"问号是? --------------------编程问答-------------------- 你的数据库字段可以为空,生成实体后,它就会在那字段上加上?号 --------------------编程问答-------------------- 相应的字段在数据库中可以为空 --------------------编程问答-------------------- 用动软生成的还要改类名。 --------------------编程问答--------------------
这个有源码,可以随意自己定制 --------------------编程问答--------------------
主要用来设置某个值可以为空,例如 int类型 bool类型. --------------------编程问答-------------------- 相当于 Nullable<DateTime>, Nullable<int> --------------------编程问答-------------------- 可空类型 --------------------编程问答-------------------- 后面.value --------------------编程问答-------------------- 后面.value --------------------编程问答-------------------- 可空值类型 --------------------编程问答-------------------- 可空值类型 null --------------------编程问答-------------------- 可空类型:下面的是例子:
int? i = null;
int b = i ?? 0;
和
int? i = 3;
int b= i??0;
看懂了这两个,就知道?和??是做什么用的了。 --------------------编程问答-------------------- 表示可空类型,你可给它赋值为null,亦可赋值为你声明的数据类型 --------------------编程问答-------------------- 类型后面加问号 表示可以为空!
我们知道数据库表字段内容是可空的,实体类一定意义上代表一个表字段的描述。但通常你声明一个类型属性的时候是无法进行Null赋值的,所以属性若想表示可空或有值,可直接加个? --------------------编程问答-------------------- 额,还是学习了... --------------------编程问答-------------------- 类型后面加问号 表示可以为空! --------------------编程问答-------------------- 这个我也是到这个公司来才看到过。好像也算的上是个新特新。也不知道怎么说举个例子。错了别见怪没测过。
int?a
那个a可以用null 表示 --------------------编程问答-------------------- Nullable<DateTime>, Nullable<int>
都是可空类型,使用的时候比较方便。
注意序列化的时候可能会出问题。
参考:
http://msdn.microsoft.com/zh-cn/library/1t3y8s4s(VS.80).aspx
http://msdn.microsoft.com/zh-cn/library/2cf62fcy(VS.80).aspx --------------------编程问答-------------------- ? 表示可以为空 --------------------编程问答-------------------- 学习了,遇到过 --------------------编程问答-------------------- --------------------编程问答-------------------- 如大家所说,?是指这个字段可以为空。但补充点的是在Model取这个字段值时要用 字段名.Value --------------------编程问答-------------------- 如果你不修改这个?
然后你还想用他生成的DAL,估计会有问题,最好去掉,虽然他表示可空,
但用起来没实际意义 --------------------编程问答-------------------- 表示可为空啊 加问号 当值为null是 int 不会报错 --------------------编程问答--------------------
原来如此。学习了。 --------------------编程问答-------------------- --------------------编程问答-------------------- 就是数据库的字段可以为空,楼上都说了。 --------------------编程问答-------------------- --------------------编程问答-------------------- int?表示可空的int,就是说 int? = null
一般情况下 int = null是会报错的
补充:.NET技术 , ASP.NET