|
戏子痴心猪
一头执着演着戏的猪··· |
自打上次碰到这个“??”开始,老是碰到这个操作符,看样子,这个操作符有流行起来的趋势,所以先搞个笔记记下这个操作符的意义。
这个“??”操作符,其实就是用来简化“?:”操作符的,如果 ?? 运算符的左边非空,该运算符将返回左边的,否则返回右边的。
object a=null;
object b=a??new object();
如上例,最后返回的就是new object();等价于
object a=null;
object b=a==null?new object():a;
官方解释:http://msdn.microsoft.com/zh-cn/library/ms173224(v=VS.90).aspx
yyd%25n6@h5k$g~r7a$te39v.jpg)
项目中用到过的一个比较实用的方法,在这里做个小小的笔记,方便以后使用。
代码
/// <summary>
/// 随机产生考场号
/// </summary>
/// <param name="start">初始值</param>
/// <param name="count">数量</param>
/// <returns></returns>
public static List<int> GetRandomList(int start, int count)
{
List<int> list = new List<int>();
List<int> temp = new List<int>();
for (int i = start; i < count + start; i++)
{
temp.Add(i);
}
Random ro = new Random();
while (list.Count < count)
{
int a = ro.Next(0, temp.Count);
if (!list.Contains(temp[a]))
{
list.Add(temp[a]);
temp.Remove(temp[a]);
}
}
return list;
}
这个方法虽然是用的list,但是稍稍转换下,也可以用来生成数组。
第一次写博文哈···
这只是一个自己的方法笔记,用来从数据库读取数据,以绑定ASPxGridView的选择状态。
代码
private void SelectionState()
{
//根据条件从数据库读取数据,最后得到一个集合
td_examtype et = new td_examtype();
et.examtype_Profession = cbProfession.SelectedItem.Value.ToString();
et.examtype_Type = Convert.ToInt32(cbType.SelectedItem.Value) + 1;
et.examtype_Year = DateTime.Now.Year.ToString();
List<td_examtype> list = Bll_examtype.GetExamType(et);
//循环遍历ASPxGridView的行,匹配数据,如果成功,设置Selection,让这一行变成选中状态。
for (int i = 0; i < ASPxGridView1.VisibleRowCount; i++)
{
DataRowView row = ASPxGridView1.GetRow(i) as DataRowView;
if (list.Where(e => e.examtype_StudentCard == row[0].ToString()).SingleOrDefault() != null)
{
ASPxGridView1.Selection.SelectRow(i);
}
}
}
其中,ASPxGridView1.GetRow(i)得到的是一个对象,至于是什么对象,视你绑定的数据源而定,因为我绑定的是一个datatable,这里得到的就是datarowview,如果不知道要把它转换成什么对象,可以试试row.GetType().toString(),得到它的数据类型,然后转换就可以了。当然了,你也可以把绑定的数据源全部转换成datatable,这样就可以不用担心类型转换的问题了。另记得线清空ASPxGridView已有的选中状态,ASPxGridView1.Selection.UnselectAll();,再调用这个方法,不然每次更新的时候它只是清空了当前页的绑定状态哦。
注:可能看不全的那个地方的代码是:if (list.Where(e => e.examtype_StudentCard == row[0].ToString()).SingleOrDefault() != null)