نمایش یک مطلب و جزئیات ان از جدول جدا گانه در یک ویوو

9/30/2016 MVC
2419

سلام امروز یک مطلب جالب داشتم، ما میتوانیم لیست مطالب در MVC  از یک بانک اطلاعاتی درکنترلر بخوانیم و در ویوو نمایش دهیم و زمانی که روی لیست اطلاعت در ویوو کلیک میکنیم جزئیات مربوط به آن را درویوو جدید ببینیم

مثلا ما یک خبر داریم و قرار است متن آن خبر از بانک اطلاعاتی خوانده شود  خواندن را در Controller  انجام میدهیم و اطلات خوانده شده را با ویوو میفرستیم در ویوو  تیتر خبر و متن خبر و ... نمایش داده میشود اما این خبر یک تعداد عکس دارد که قرار است عکسها از جدولی دیگر خوانده شود که ارتباط با جدول خبر دارد و این عکسها به صورت اسلاید در کنار متن خبر نمایش دهده شود 

برای این کار ما اطلاعات خبر را از بانک اطلاعاتی به صورت single  میخوانیم و در ویوو نمایش میدهیم، برای نمایش عکسها به صورت اسلاید اطلاعات را به صورت پارشیال ویوو به اکشن در کنترلر میفرستیم و اطلاعات را در پارشیال ویوو نمایش میدهیم ، نتیجه ، با توجه به اینکه هنوز ویوو اول بسته نسده و نمایش آن کامل شنده است پیغام خطایی را میبینیم 

There is already an open DataReader associated with this Command which must be closed first.

 در حالت عادی زمانی لیست مطالب نمایش داده میشود بعد از اتمام نمایش لیست کاربر با کلیک بر روی لینک مطلب به صفحه ای جدید وارد میشود و در مثال ما Id  به اکشت ارسال میشود و عکسها در ویوو جدید نمایش داده میشود اما در زمانی که هنوز لیست مطالب نمایش داده نشده و ما قصد داریم عکسهای مرتبط با آن نیز نمایش داده شود خطاب بالا را میبینیم 

حال برای حل این مشکل میتوان کد 

MultipleActiveResultSets=true

را در کانکشن استرینگ ConnectionString  اضافه نماییم ، مشکل حل میشود