使用委托的条件赋值
本文关键字:条件 赋值 | 更新日期: 2023-09-27 18:01:45
我想给一个数据表赋值。
如果datatable是null,创建一个新的datatable,否则清空datatable
我写的代码
datatable= (datatable== null) ?
new DataTable() :
delegate(){datatable.Clear(); return datatable;});
如何使用委托或匿名方法实现这一点?使用尽可能短的代码
你可以使用委托,但我真的不会。我只用:
if (dataTable == null)
{
dataTable = new DataTable();
}
else
{
dataTable.Clear();
}
这是一个很多清晰的在做什么,IMO。
这是委托版本的所有丑陋之处:
dataTable = dataTable == null ? new DataTable() :
((Func<DataTable>)(() => { dataTable.Clear(); return dataTable; }))();
你是说像这样的东西吗?
Func<DataTable, DataTable> datatable = (n => {
if (n == null)
n = new DataTable();
else
n.Clear();
return n; });