運行的FxCop時,我得到了以下錯誤:的FxCop鑄造警告
CA1800:Microsoft.Performance: 'OBJ',一個變量,是投在方法 鍵入 '工作' 多次「的ProductsController 。詳細信息(int, int)'。緩存的結果「爲」 運營商或直接投以 消除冗餘castclass 指令
代碼:
object obj = repository.GetJobOrPlace(jobId);//Returns (object) place or (object) product
if (obj != null)
{
if (obj is Job)
{
Job j = (Job) obj;
Debug.WriteLine(j.Title);
}
else if (obj is Place)
{
Place p = (Place) obj;
Debug.WriteLine(p.Title);
}
}
如何處理此問題?我只能看到一個演員:Job j =(Job)obj。
「is」運算符也是一個強制轉換,就.NET而言。 – 2010-03-03 10:06:58