两张表的内容用linq连接查询时,右表未空时,就会出现未将对象设置引用到对象实例

var query3 = from aa in dt44.AsEnumerable()
join zz in dt33.AsEnumerable()
on new
{
id1 = aa.Field("id")

                    }

                   equals new
                   {
                       id1 = zz.Field<string>("id")

                   } into xx
                     from hh in xx.DefaultIfEmpty()
                     select new
                     {
                         iform = aa,
                       inform2= hh

                     };



        DataTable dtcomb = new DataTable();
        dtcomb.Columns.Add("id");
        dtcomb.Columns.Add("shuliang");

        dtcomb.Columns.Add("mony");

        foreach (var obj in query3)
        {
            DataRow dr = dtcomb.NewRow();
            dr["id"] = obj.iform.ItemArray[0];
            dr["数量"] = obj.iform.ItemArray[1];
            //dr["mony"] = obj.inform2.ItemArray[0];

            if (obj.inform2.ItemArray[1]==null)
            {
                dr["mony"] = 0;
            }
            else
            {
                dr["mony"] = obj.inform2.ItemArray[1];
            }


            dtcomb.Rows.Add(dr);
        }

                ![图片说明](https://img-ask.csdn.net/upload/201907/16/1563258400_827981.png)


                    请高手指教!!!!

if ( obj.inform2.ItemArray[0]==null )
{
dr["3DMIMO站点告警数量"] = 0;
}
->
if ( obj.inform2 == null || obj.inform2.ItemArray == null || obj.inform2.ItemArray[0]==null )
{
dr["3DMIMO站点告警数量"] = 0;
}