मुझे यह जांचने की आवश्यकता है कि लिंक की क्वेरी में दो तिथियां बराबर हैं या तिथियां दो अलग-अलग तालिकाओं से आती हैं (पैरामीटर के रूप में नहीं)। मैंने वेब पर मौजूदा समाधान और एसओ में भी देखा है। कुछ मेरे मामले में लागू नहीं हैं और कुछ सुरुचिपूर्ण नहीं हैं। अगर कोई है तो बेहतर वैकल्पिक समाधान की तलाश में है।जांचने के लिए सुरुचिपूर्ण समाधान, यदि दो तिथियां बराबर हैं, तो लिंक (जहां दूसरी तारीख पैरामीटर नहीं है)
नमूना क्वेरी (केवल तारीख अंश तुलना करने की आवश्यकता):
var query = from t1 in Table1
join t2 in Table2 on t1.Id equals t2.ForeignKeyId
where t1.Id = someId
&& t1.Date1.Date.Equals(t2.Date2.Date)
इस एक एक त्रुटि " 'तिथि' Entitiies को LINQ में समर्थित नहीं है के साथ विफल केवल initializers, इकाई के सदस्यों, और इकाई नेविगेशन गुण। समर्थित हैं "
पोस्ट 'Date' is not supported in LINQ to Entities. Only initializers, entity members, and entity navigation properties are supported में एक समाधान है जो दिन, महीना और वर्ष अलग से तुलना करता है। मैंने इसे एक विस्तार विधि में लपेटने की कोशिश की, लेकिन ऐसा लगता है कि लिंक को एक्सटेंशन विधियों को पसंद नहीं है। चूंकि दूसरी तारीख एक चर नहीं है, इसलिए मैं लिंक किए गए पोस्ट में उल्लिखित अन्य समाधान का उपयोग नहीं कर सकता (और मैं कुछ कारणों से लिंक के अंदर की तारीख पर "AddDays" विधि को कॉल नहीं कर सकता)। ऐसा लगता है कि लिंक में डेट एपीआई के साथ कई सीमाएं हैं।
क्या दिन, महीना और वर्ष की अपेक्षा अलग-अलग काम करता है? – dasblinkenlight
हां, यह काम करता है अगर मैं उन्हें अलग से तुलना करता हूं। – RKP