c#为字段设置默认值,以及构造函数初始化List对象。

1、为字段设置默认值

/// <summary>
/// 默认值
/// </summary>
private int orgPageSize = ;
private int orgPageIndex = ;
/// <summary>
/// 页的大小
/// </summary>
public int pageSize
{
get { return orgPageSize; }
set { orgPageSize = value; }
}
/// <summary>
/// 当前页
/// </summary>
public int pageIndex
{
get { return orgPageIndex; }
set { orgPageIndex = value; }
}

注意:需要纠正一下的是,在属性上通过Attribute加[DefaultValue()]的方法是无效的。(亲自使用过,根本就不能生效!网上居然还有很多文章说使用这种方式。很无语啊!)

        /// <summary>
/// 当前页
/// </summary>
[DefaultValue()]
public int PageIndex { get; set; } //无效的

2、创建对象时,利用构造函数初始化List

  /// <summary>
/// 产品管理DTO
/// </summary>
public class ProductDTO
{
/// <summary>
///
/// </summary>
public ProductDTO()
{
TestOrgOnline = new List<ProductOnlineDTO>(); //每次new一个ProductDTO,就会实例化List数组,
} /// <summary>
/// 产品上线
/// </summary>
public List<ProductOnlineDTO> TestOrgOnline { get; set; }
}

示例代码:

  ProductDTO productDto = new ProductDTO();
ProductOnlineDTO productOnlineDTO = new ProductOnlineDTO
{
onlineId = item.Id,
IsOnline = item.IsOnline,
Price = item.VIPPrice,
mark = item.Price,
OnlineDate = item.OnlineDate,
TestOrgId = item.TestOrgId,
};
var testOrg = context.TestOrg.Where(f => f.Id == item.TestOrgId).FirstOrDefault();
productOnlineDTO.TestOrgName = testOrg.OrgName;
productDto.TestOrgOnline.Add(productOnlineDTO); //将对象添加到List数组中,返回到页面。此时如果没有利用构造函数初始化List对象,就会报null引用的错误

好记性不如烂笔头!记下来避免以后再犯这样的错误!

上一篇:自定义控件如何给特殊类型的属性添加默认值 z


下一篇:MSSQL给字段添加默认值