long? میتونه مقدارش null باشه ولی long نمیتونه!!!
کد زیر رو ببینید :
private void button2_Click(object sender, EventArgs e)
{
long?[] Arr1 = new long?[3];
Arr1[0] = 0;
Arr1[2] = 2;
long[] Arr2 = new long[3];
for (int i = 0; i < Arr1.Length; i++)
{
if (Arr1[i] != null)
Arr2[i] = (long)Arr1[i];
else
Arr2[i] = 0;
}
}
اگه میتونید از حلقه مثل حلقه ای که توی کد بالا هست استفاده کنید!