با سلام خدمت برنامه نویسان عزیز.
سوال من در مورد linq می باشد
جدولی دارم شامل ID و ParentID
ID شناسه و ParentID والد ID است
داده های جدول به این صورت می باشد که
ID ParentID
0 1
1 2
2 3
3 4
من ID با شماره 4 می فرستم و باید با کمک parentID تمام ID های سطح بالای آن را بدهد.
ممنون میشم بگید کوئری linq به چه صورتی است
متوجه نشدم دوست عزیز بیشتر توضیح بدهید.
با تشکر
شبیه یک درخت است
ما از پایین می خواهیم تا اخرین سطح پیش برویم
بازهم متوجه منظورتون نشدم id شماره 4 کجا میفرستید؟
یکم واضح تر توضیح بدهید
فکر کن که توی یه اپلیکیشن داخل سی شارپ
و جدولمون داخل بانکه
و با استفاده از تکنولوژی entityframework
به بانک وصل شدیم
و حالا داریم با دستورات linq به بانک select می زنیم
ok
این رو میدونم دوست عزیز ، کوئری که میخواهید بنویسید را متوجه نمی شوم.
"من ID با شماره 4 می فرستم و باید با کمک parentID تمام ID های سطح بالای آن را بدهد."
با استفاده از تابع بازگشتی حلش کردم
یه لیتی به عنوان چیزی که می خواهیم برگردونیم به عنوان پارامتر و به صورت ref می فرستیم
داخل تابع هم کوئری میزنم تا با شرط ID ، شناسه ParentID برگردونه
اگه مقدار بازگشتی مخالف null بود دوباره داخل خود تابع، تابع را فراخوانی می کنیم و با مقدار برگشتی از تابع قبل در اول تابع هم مقدار های ID رو به لیستمون اضافه می کنیم
یا علی با تشکر
هیچ کاربری تا کنون از این پست تشکر نکرده است
با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)