变量'x'已声明但从未使用过错误

soo*_*ise 6 c# linq

好的,所以我从微软那里得到了一些漂亮的代码,我有点想要摆脱它的打嗝.

原始代码在控制台上打印出ChangeConflictException x,但我删除了这一行.现在,每次我使用这段代码时,我都会收到错误:"变量'x'被声明但从未使用过".

在保留代码功能的同时摆脱此错误的最有效方法是什么?

//See http://msdn.microsoft.com/en-us/library/bb386918.aspx
try
{
    DB.SubmitChanges(ConflictMode.ContinueOnConflict);
}

catch (ChangeConflictException x)
{
    foreach (ObjectChangeConflict occ in DB.ChangeConflicts)
    {
        occ.Resolve(RefreshMode.KeepChanges);
    }
}
// Submit succeeds on second try.
DB.SubmitChanges(ConflictMode.FailOnFirstConflict);
Run Code Online (Sandbox Code Playgroud)

Mar*_*ell 24

编译器是对的; 它也可以是:

catch (ChangeConflictException)
{
    foreach (ObjectChangeConflict occ in DB.ChangeConflicts)
    {
        occ.Resolve(RefreshMode.KeepChanges);
    }
}
Run Code Online (Sandbox Code Playgroud)

这限制了进入该块的异常,但并声明一个变量它.如果要检查值,记录它或将其包装在另一个异常中,则该变量很有用.只是为了完整性(在这里不适用)通常再掷应该是throw;, throw x;(保存堆栈跟踪).