با سلام.
من پروژه ای دارم که در قسمتی از آن با توجه به مقدار انتخابی کاربر از لیست، جستجو در فایل xml انجام می شود که با دستورات لینک آن را نوشته ام. الان مشکلی که دارم اینه که حالت های انتخاب کاربر خیلی زیاده و با توجه به اون قسمت where در دستورات لینک تغییر میکنه . میخواستم ببینم راهی وجود داره که بشه یک متغیر رو از قبل با مقادیری که میخوام تو قسمت where قرار بگیره پر کنم بعد مقابل عبارت where در دستورات لینک اون متغیر رو قرار بدم؟؟
کدت رو حداقل میگذاشتی تا ببینیم یا یه نمونه شبیه تا بتونیم راه حل بهتری ارائه بدم.
یک راه حل استفاده از الگویی شبیه به strategy pattern می تواند به شما کمک کند.
شما فرض کنید که من یک کوری به این صورت دارم . حالا میخوام به جای اینکه دستور مقابل where رو بنویسم این دستور داخل یک متغیر باشه بعد اون متغیر رو بزارم مقابل where
راجع به Dynamic Linq Query جستجو کنید.
باید بسته اش رو از ناگت نصب کنید
اینم آدرسش که میتونین تو ناگت کنسول بزنید. برای نحوه ی کارکردن باهاش هم میتونید جستجو کنید.
Install-Package System.Linq.Dynamic -Version 1.0.7
myQuery = myQuery.Where("CategoryId=2");
هیچ کاربری تا کنون از این پست تشکر نکرده است
با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)