मैं निम्नलिखित है, लेकिन यह एक NullReferenceException
साथ नाकाम रहने है:एएसपी.नेट एमवीसी रेजर में काम करने के लिए नल कोलेसे ऑपरेटर कैसे प्राप्त करें?
<td>@item.FundPerformance.Where(xx => fund.Id == xx.Id).FirstOrDefault().OneMonth ?? -</td>
OneMonth
public virtual decimal? OneMonth { get; set; }
के रूप में परिभाषित किया गया है और इसके मूल्य समय है कि यह विफल रहता है पर रिक्त है।
मैंने सोचा कि नल कोलेसे ऑपरेटर परीक्षण करेगा यदि इसकी शून्य और यदि ऐसा है, तो ऑपरेटर के दाईं ओर मूल्य वापस कर दें?
मुझे यह काम करने के लिए बदलने की क्या ज़रूरत है?
क्या आप वाकई 'FirstPrDefault() 'द्वारा चयनित' FundPerformance'-object 'नहीं हैं जो शून्य है? यदि ऐसा कोई मामला है जो आप किसी ऑब्जेक्ट से संदर्भ प्राप्त करने का प्रयास कर रहे हैं जो शून्य है, जो 'NullReferenceException' –
देता है तो मुझे लगता है कि जोकिम सही है। साथ ही, आपको वास्तव में एक व्यूमोडेल में यह गणना करना चाहिए और बस अपने रेज़र दृश्य में जवाब देना चाहिए। और यदि आप वास्तव में अपने विचार से डेटाबेस लुकअप कर रहे हैं तो यह बहुत शरारती है! :-) –
हाय दोस्तों। यह आपके दोनों सही हो जाता है। मैंने एक गूंगा किया। बस किसी भी चिंताओं को कम करने के लिए, मैं वादा करता हूं कि मैं दृश्य से डेटाबेस कॉल नहीं कर रहा हूं! ViewModel रिपोजिटरी में एक सेवा कॉल के माध्यम से नियंत्रक में आबादी है। – DaveDev