دسته بندی ها
20:51 1399/04/09

مقدار دهی آرایه با کویری از اسکیوال

مشخصات سوال کننده :
کاربر : system     امتیاز کاربر : 0     رتبه کاربر : 7074
دسته بندی : سی شارپ

به این سوال امتیاز بدهید    0
تعداد بازدید این سوال : 3423
هوش مصنوعی

پاسخ هوش مصنوعی

شما می توانید با استفاده از یک حلقه ساده، مقادیر ستون TajID را از کویری خود استخراج کرده و در آرایه tajid ذخیره کنید. در زیر یک کد نمونه برای این کار ارایه شده است:

private void ComTajView(Func<string> SearchStringForTaj)
{
   try
   {
      var query = Db.Database.SqlQuery<tblTaj>("select * from tblTaj Where 1=1 " + 
      SearchStringForTaj()).ToList();

      try
      {
         cmbTaj.ItemsSource = query;
         cmbTaj.DisplayMemberPath = "Taj";
         cmbTaj.SelectedValuePath = "TajID";

         int[] tajid = new int[query.Count];
         for (int i = 0; i < query.Count; i++)
         {
             tajid[i] = query[i].TajID; // فرض بر این است که ستون TajID در tblTaj وجود دارد
         }
      }
      catch
      {
         cmbTaj.ItemsSource = null;
      }
   }
   catch (Exception ex)
   {
      MessageBox.Show("در ارتباط با دیتابیس مشکلی بوجود آمده لطفاً دوباره سعی کنید" + ex.ToString(), "خطای ارتباطی");
   }
}

در این کد، ابتدا نتایج کویری با استفاده از ToList() به لیستی از نتایج تبدیل می شود و سپس با یک حلقه for، ستون TajID از هر رکورد در آرایه tajid قرار می گیرد.

به این پاسخ امتیاز بدهید    0
امتیاز: - رتبه: -
پاسخ دهنده : Sowgandi 10:46 1399/04/10

سلام. برای این کار میتونید به روش زیر عمل کنید.

var result = query.ToList();
List<int> tajid = new List<int>();
for (int i = 0; i < result.Count; i++)
{
   tajid.Add(Convert.ToInt32(result[i].TajID));
}

 

ویرایش شده در چهارشنبه 17 بهمن 1403 ساعت 11:01:38
به این پاسخ امتیاز بدهید    1
امتیاز: 876 رتبه: 3
برای ارسال پاسخ لطفا وارد حساب کاربری خود شوید.   ورود