تبدیل آرایه long? به long
سلام دوستان گل
من یه مشکلی کوچیک دارم که یه آرایه دارم از نوعlong و یه متغییر هم از نوع long? حالا میخام مقدار اولی رو بریزم تو دومی که پیغام زیر میاد
long[] rett;
long ?[] msggIdArray = sendResult.msgIdArray;
rett = sendResult.msgIdArray;
Cannot implicitly convert type 'long?[]' to 'long
بدون اینکه نوع long va long ? رو مثل هم کنم
نقل قول: تبدیل آرایه long? به long
اینطوری :
rett = sendResult.msgIdArray as long;
نقل قول: تبدیل آرایه long? به long
نقل قول:
نوشته شده توسط
troski
اینطوری :
rett = sendResult.msgIdArray as long;
این ارورر میاد
The as operator must be used with a reference type or nullable type ('long' is a non-nullable value type)
نقل قول: تبدیل آرایه long? به long
آره شرمنده تستش نکردم!
مثل اینکه نمیشه مستقیم این کار رو کرد!
حالا واسه چی از long? استفاده می کنید،شاید روش دیگه ای هم باشه!!!
نقل قول: تبدیل آرایه long? به long
نقل قول:
نوشته شده توسط
troski
آره شرمنده تستش نکردم!
مثل اینکه نمیشه مستقیم این کار رو کرد!
حالا واسه چی از long? استفاده می کنید،شاید روش دیگه ای هم باشه!!!
سلام دوست خوبم
آخه یه وب سرویسه که بیسش اینطوری تعریف کرده و هرکدوم تو جاهای مختلف برنامه صدا زده شدن و مقدارشون تغییر میکنه نمیشد تغییر بدم
خودم نمیدونم long? برای چی هست و نوع داده من long هست که به این مشکل بر خوردم موندم توش
نقل قول: تبدیل آرایه long? به long
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;
}
}
اگه میتونید از حلقه مثل حلقه ای که توی کد بالا هست استفاده کنید!