ورود

View Full Version : سوال: حذف رکوردهای تکراری از gridview



L_eskandary
جمعه 02 مهر 1389, 13:01 عصر
سلام بر دوستان مهندسم ...
ببینید من چندتا گروه دارم ، یه نفر می تونه عضو چند گروه باشه . اسم گروه ها رو به یه checklist‌ بایند می کنم تا کاربر هر گروهی که انتخاب کرد اطلاعات کاربران مربوط به اون گروه وارد گرید بشه .حالا من می خوام گروه هایی که انتخاب می کنم براشون مثلا ایمیل بفرستم . ولی نمی خوام کسی که تو دو تا یا بیشتر گروه هستش براش چند بار ایمیل ارسال شه و می خوام اگه ایمیل تکراری وجود داشته باشه فقط یه بار به اون ایمیل ارسال شه .من اطلاعات مربوط به ایمیل رو به همراه نام و نام خانوادگی هر فرد داخل grid‌می ریزم . الان سوالم اینه که چطور باید سطرهای Grid‌ رو بررسی کنم و بگم برا سطرهایی که ایمیل تکراری دارن فقط یه بار ارسال داشته باشه ؟
امیدوارم واضح گفته باشم .
موفق باشین...

profnami
جمعه 02 مهر 1389, 13:23 عصر
چرا از يك ليست استفاده نميكنيد ؟براي هر كسي كه ايميل فرستاديد اسمش رو تو ليست ذخيره كنيد يا Id ش رو . حالا قبل از فرستادن ايميل ها چك كنيد اگه Id كاربر موجود باشه يعني اون ايميل براش ارسال شده اگر هم موجود نباشه اون رو به ليست اضافه كنيد و براش ايميل بفرستيد .

L_eskandary
جمعه 02 مهر 1389, 13:53 عصر
ببینید گفتم فرض کنید ایمیل ارسال می کنیم . در واقع کار اصلی من ارسال sms‌هستش و برا اینکار من دوتا شماره موبایل به همراه ایمیل هر فرد رو از database انتخاب می کنم . حالا بستگی داره که من کدوم یک از اینها رو انتخاب کنم مثلا ممکنه از بین سطرهای گرید ، برا یک کاربر ارسال ایمیل رو انتخاب کنم برا یکی شماره موبایل اول و برا یکی شماره موبایل دوم رو انتخاب کنم تا براش sms بفرستم ...البته باز نمی دونم روشم تا چه حد منطقی هستش اگه راه حل دیگه ای هم به ذهنتون میرسه ممنون میشه راهنمایی کنین .

profnami
جمعه 02 مهر 1389, 14:05 عصر
تفاوت زيادي نميكنه . در واقع شما ID كاربر رو در ليست ذخيره كنيد . ليست رو هم در يك Session ذخيره كنيد . حالا چه خواستيد براش ايميل بفرستيد چه خواستيد پيامك بفرستيد قبلش چك كنيد كه آيا ID در ليست موجوده يا نه . آيا اين روش مشكلي داره ؟

L_eskandary
جمعه 02 مهر 1389, 14:44 عصر
تفاوت زيادي نميكنه . در واقع شما ID كاربر رو در ليست ذخيره كنيد . ليست رو هم در يك Session ذخيره كنيد . حالا چه خواستيد براش ايميل بفرستيد چه خواستيد پيامك بفرستيد قبلش چك كنيد كه آيا ID در ليست موجوده يا نه . آيا اين روش مشكلي داره ؟
من هر بار به بیش 2000 نفر sms‌میفر ستم فک می کنید این روش جوابگو هستش؟

profnami
جمعه 02 مهر 1389, 15:17 عصر
راستش نميدونم . خوب ميتونيد امتحان كنيد . اگر نشد ميتونيد همين كار رو با Database انجام بديد . ID ها رو در Database ذخيره كنيد .ميتونيد حتي تاريخ ارسال و نوع ارسال اين كه اس ام اس بوده يا ايميل بوده و حتي آدرس ارسال ( شماره تلفن و يا ايميل) و ... رو ذخيره كنيد . اين اعمال براي SQL فكر نميكنم زياد دردسر داشته باشه .