我有以下代碼:ReSharper的警告 - 訪問修改關閉
string acctStatus = account.AccountStatus.ToString();
if (!SettableStatuses().Any(status => status == acctStatus))
acctStatus = ACCOUNTSTATUS.Pending.ToString();
注意account.AccountStatus是類型ACCOUNTSTATUS的枚舉。在第二行中,ReSharper向我發出acctStatus的「訪問修改的關閉」警告。當我做推薦的操作,複製到本地變量,它修改代碼如下:
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();
這似乎是徹頭徹尾的古怪的我。
檢查此問題並接受答案,可能有幫助。 http://stackoverflow.com/questions/235455/access-to-modified-closure – Chuck 2009-11-06 15:59:53