enter image description here

मेरे पास 2 पैरामीटर हैं। एक डिफॉल्टफ्रॉमडी है और दूसरा डिफॉल्ट टॉड है। अगर मैं इसके लिए 2 तारीख की सीमा दे दूं x.CreatedOn >= defaultFromD && x.CreatedOn <= defaultToD

x. CreatedOn >= '2021-10-17' && x. CreatedOn <= '2021-10-20'

यह काम कर रहा है। लेकिन अगर मैं इन दो मापदंडों के लिए एक ही तारीख देता हूं तो यह स्थिति काम नहीं कर रही है।

x. CreatedOn >= '2021-10-20' && x. CreatedOn <= '2021-10-20'

मैं जानना चाहता हूं कि इस 2 तर्क को एक शर्त में कैसे पास किया जाए। कृपया इस मुद्दे को हल करने में मेरी मदद करें।

शुक्रिया...

  public ResponseDTO<IQueryable<LabRequestForLabOrderDTO>> GetApprovedLabRequestsQueryable(DateTime defaultFromD, DateTime defaultToD)
    {
        var resp = ResponseBuilder.Build<IQueryable<LabRequestForLabOrderDTO>>();
        var reqs = this.labRequestRepository.GetAllActive().Where(x => x.IsActive && x.TrxStatus == 1 && x.InvoiceStatus == "Approved"
                        && x.CreatedOn >= defaultFromD && x.CreatedOn <= defaultToD)
                .Select(x => new LabRequestForLabOrderDTO
                {
                    Clinic = x.Clinic,
                    LabOrderCreated = x.LabOrderCreated,
                    InvoiceStatus = x.InvoiceStatus,
                    CreatedOn = x.CreatedOn
                }).AsQueryable();

        resp.AddSuccessResult(reqs);
        return resp;
    }
-1
Chathuranga Ranasingha 22 अक्टूबर 2021, 13:01
1
कोड को टेक्स्ट के रूप में पोस्ट करें और समझाएं कि आप क्या पुनर्प्राप्त करना चाहते हैं। यदि आप किसी डेटाबेस को क्वेरी करते हैं तो तालिका स्कीमा पोस्ट करें, विशेष रूप से फ़ील्ड प्रकार। x.CreatedOn >= '2021-10-20' && x.CreatedOn <= '2021-10-20' x.CreatedOn = '2021-10-20' के बराबर है और तालिका में किसी भी रिकॉर्ड से मेल नहीं खा सकता है। यदि CreatedOn एक date फ़ील्ड होता तो यह उस तिथि के साथ किसी भी पंक्ति से मेल खाता। अगर यह datetime, datetime2 आदि है, तो यह उन पंक्तियों से मेल खाएगा जो बिल्कुल 2021-10-20 00:00:00.0000 हैं
 – 
Panagiotis Kanavos
22 अक्टूबर 2021, 13:05
यदि, दूसरी ओर, आप इन-मेमोरी सूची को फ़िल्टर करने का प्रयास करते हैं, तो क्वेरी केवल उन आइटम्स से मेल खाएगी जो मान से बिल्कुल मेल खाते हैं, नैनोसेकंड के लिए
 – 
Panagiotis Kanavos
22 अक्टूबर 2021, 13:08
प्रश्न स्पष्ट नहीं है।
 – 
MD. RAKIB HASAN
22 अक्टूबर 2021, 13:13
क्लाइंट साइड में दिनांक सीमा चयनकर्ता होता है। अगर मैं रिकॉर्ड्स तक पहुंचने के लिए उसी तारीख का चयन करता हूं। डेटा नहीं आया है। लेकिन अगर मैं अलग-अलग रेंज का चयन करता हूं तो यह काम कर रहा है। मैं जानना चाहता हूं कि अगर मैं एक तिथि सीमा देता हूं तो मैं कैसे कर सकता हूं
 – 
Chathuranga Ranasingha
22 अक्टूबर 2021, 13:18
कोड को टेक्स्ट के रूप में पोस्ट करें, न कि पढ़ने में मुश्किल इमेज के रूप में। छवियों को कॉपी, संकलित और डीबग नहीं किया जा सकता है। समस्या फ़ील्ड प्रकार के कारण होती है, क्लाइंट के कारण नहीं। CreatedOn क्या है? यदि यह एक टेबल कॉलम है तो इसका प्रकार क्या है? यदि इसमें समय घटक है तो क्वेरी को x.CreatedOn >=date.Date && x.CreatedOn < date.Date.AddDays(1) में बदलना होगा
 – 
Panagiotis Kanavos
22 अक्टूबर 2021, 13:31

3 जवाब

सबसे बढ़िया उत्तर

मेरे लिए यह काम

var todate = defaultToD.AddDays(1);

x.CreatedOn >= defaultFromD && x.CreatedOn <= todate
0
phuzi 25 अक्टूबर 2021, 13:53
क्या यह <= x.CreatedOn <= todate में नहीं होना चाहिए अन्यथा यह डिफ़ॉल्ट के बाद किसी भी तारीख से मेल खाएगा FromD और x.CreatedOn >= todate बेमानी है?
 – 
phuzi
25 अक्टूबर 2021, 10:42
हां। आप सही। टाइपिंग करने में गलती। धन्यवाद।
 – 
Chathuranga Ranasingha
25 अक्टूबर 2021, 12:40
मैंने आपके प्रश्न को टाइपो फिक्स के साथ अपडेट कर दिया है।
 – 
phuzi
25 अक्टूबर 2021, 13:54

यह डेटटाइम और डेट फॉर्मेट के कारण है।

आपको निम्न तरीके से प्रयास करना चाहिए।

आप कॉलम पर विचार करें CreatedOn डेटाटाइप है: डेटटाइम

x.CreatedOn.Date >= '2021-10-20' && x.CreatedOn.Date <= '2021-10-20'
0
Malvik Bhavsar 22 अक्टूबर 2021, 13:16
मैंने कोशिश की। यह काम नहीं करता
 – 
Chathuranga Ranasingha
22 अक्टूबर 2021, 13:31
क्या आप CreatedOn तिथियों के अपने नमूना डेटा को खुश कर सकते हैं?
 – 
Malvik Bhavsar
22 अक्टूबर 2021, 13:40
माफ़ करना। मैं तुम्हें नहीं मिला।
 – 
Chathuranga Ranasingha
22 अक्टूबर 2021, 14:44
अपना टेबल नमूना डेटा साझा करें जो आपको इस स्थिति में आने के लिए आवश्यक था। x. CreatedOn >= '2021-10-20' && x. CreatedOn <= '2021-10-20'
 – 
Malvik Bhavsar
22 अक्टूबर 2021, 16:55

ये कोशिश करें

x.CreatedOn.AddDays(-1) > defaultFromD && x.CreatedOn.AddDays(1) < defaultToD
0
Avinash 22 अक्टूबर 2021, 13:27