तक पहुंच मैं निम्नलिखित कोड है:ReSharper चेतावनी - संशोधित बंद
string acctStatus = account.AccountStatus.ToString();
if (!SettableStatuses().Any(status => status == acctStatus))
acctStatus = ACCOUNTSTATUS.Pending.ToString();
ध्यान दें कि account.AccountStatus प्रकार ACCOUNTSTATUS का एक enum है। दूसरी पंक्ति पर, रेशेपर मुझे एक्टस्टैटस के लिए "संशोधित बंद करने की पहुंच" चेतावनी दे रहा है।
string acctStatus = realAccount.AccountStatus.ToString();
string s = acctStatus;
if (!SettableStatuses().Any(status => status == s))
acctStatus = ACCOUNTSTATUS.Pending.ToString();
क्यों अच्छा है या क्या मैं मूल रूप से किया था बेहतर है: जब मैं सिफारिश संचालन करते हैं, स्थानीय चर को कॉपी, यह निम्न करने के लिए कोड को संशोधित करता है?
string[] acctStatus = {realAccount.AccountStatus.ToString()};
if (!SettableStatuses().Any(status => status == acctStatus[0]))
acctStatus[0] = ACCOUNTSTATUS.Pending.ToString();
यह मेरे लिए पूरी तरह निराला लगता है:
संपादित
यह भी सरणी में लपेटें स्थानीय चर, जो पैदा करता है की सिफारिश की।
इस SO प्रश्न और स्वीकृत उत्तर की जांच करें, सहायक हो सकता है। http://stackoverflow.com/questions/235455/access-to-modified-closure – Chuck