मेरे सी # कोड में, मुझे दो गैर-शून्य चर का मूल्यांकन करने की आवश्यकता है। मैंने का एक सेट तैयार किया है, यदि अन्य कथन, लेकिन मेरे दिमाग में यह बदसूरत और थोड़ा सा मैला दिखता है, भले ही यह सही हो।क्या दो चर के साथ चयन कथन करने का कोई प्रभावी तरीका है?
मैंने MSDN Library में देखा और एकल चर के आधार पर चयन के लिए केवल उदाहरण देखा।
क्या एक ही परिणाम प्राप्त करने के लिए एक क्लीनर और अधिक कॉम्पैक्ट तरीका है?
अद्यतन: मैंने अधिक संदर्भ प्रदान करने के लिए कोड भर दिया। इसे और अधिक देखकर, शायद मैं पैरामीटर के आधार पर सीधे linq क्वेरी में हेरफेर कर सकता हूं। हालांकि, प्रश्न जो मैं उत्पन्न करता हूं, वह सामान्य है जिसे मैं ध्यान केंद्रित करना चाहता हूं: चयन के बाद उपयोग किए गए कोड के बजाय चयन।
public ActionResult Index(string searchBy, string orderBy, string orderDir)
{
var query = fca.GetResultsByFilter(searchBy);
if (orderBy == "Campus" && orderDir == "Asc")
{
query = query = query.OrderBy(s => s.Campus).ThenBy(s => s.Student_Name);
}
else if (orderBy == "Campus" && orderDir == "Desc")
{
query = query.OrderByDescending(s => s.Campus);
}
else if (orderBy == "Student Name" && orderDir == "Asc")
{
query = query = query.OrderBy(s => s.Student_Name);
}
else if (orderBy == "Student Name" && orderDir == "Desc")
{
query = query.OrderByDescending(s => s.Student_Name);
}
else if (orderBy == "Course Count" && orderDir == "Asc")
{
query = query.OrderBy(s => s.Course_Count);
}
else if (orderBy == "Course Count" && orderDir == "Desc")
{
query = query.OrderByDescending(s => s.Course_Count);
}
}
'/ * ... कोड ... * /' क्या है? आप इस तरह के प्रश्नों को करने के लिए LINQ का उपयोग कर सकते हैं, यह मानते हुए कि कोड के अंदर क्या है। – Cyral
मैं एक और सामान्य अर्थ में बोल रहा था। ये पैरामीटर एक फॉर्म सबमिट करके फ़ंक्शन में भेजते हैं। मैं उस संदर्भ को प्रदान करने के लिए अपने पोस्ट किए गए प्रश्न में संशोधन करूंगा। –
आप पहली बार एक विधि बना सकते हैं जैसे (चेक ("कैंपस", "एएससी")) ..., फिर अपने तारों को एक सरणी और लूप में जोड़ें ... के लिए (i ...) {if (check (स्ट्रबी [i], strdir [i]))} .... या यदि आप दो एरे पसंद नहीं करते हैं तो इसके लिए एक विशेष वस्तु बनाएं ... – ElDuderino