क्या सी # में एक स्ट्रिंग को अस्वीकार करने का कोई शॉर्टेंड तरीका है?क्या सी # में एक स्ट्रिंग को अस्वीकार करने का कोई शॉर्टेंड तरीका है?
यह की बराबर होगा (अगर 'एक्स' एक स्ट्रिंग है):
string y = #x;
इच्छाधारी:
string y = x == null ? "" : x;
मुझे लगता है कि मैं आशा करती हूं कि कुछ ऑपरेटर ऐसा ही कुछ काम करेगा है सोच रहा है, हुह?
निकटतम मैं अब तक मिल गया है स्ट्रिंग वर्ग पर एक विस्तार विधि है:
public static string ToNotNull(this string value)
{
return value == null ? "" : value;
}
जो मुझे करने के लिए अनुमति देता है:
string y = x.ToNotNull();
कि पर कोई सुधार, किसी को?
मैं इस समस्या से बचने के लिए शून्य तारों से बचता हूं। अगर कोई और नल स्ट्रिंग बना रहा है, तो हिंसा आवश्यक हो सकती है। YMMV। – Greg
तथ्य यह है कि आपका आखिरी उदाहरण काम करता है, यह बहुत डरावना है, क्योंकि ऑब्जेक्ट पर ऑब्जेक्ट है कि ऑब्जेक्ट = null है या नहीं। मुझे पता है कि विस्तार के तरीके स्थिर होने के कारण हैं, लेकिन इसे देखते समय यह गलत लगता है। – ntziolis
नल स्ट्रिंग्स बुराई हैं, स्ट्रिंग के साथ तत्काल। लक्षण और उपरोक्त तर्क से बचें। –