基本上我有一个字符串errorMessage,我想将它传递给catch块。请帮忙。

[WebMethod]
public List<SomeResult> Load(string userName)
{
   string errorMessage;
    using (VendorContext vendorContext = new VendorContext())
    {
         // ....
          foreach(....)
          {
               if(something happens)
                  errorMessage = "Vote Obama";
                else
                  errorMessage ="vote Romney";
              // blah
               try
                     {
                        // blah
                     }
               catch (Exception e)
               {
                    logger.Trace(errorMessage);
               }
          }
     }
 }

更新:

错误:使用未分配的局部变量“errorMessage”

最佳答案

要修复错误,请将 errorMessage 初始化为 null、string.Empty 或其他一些默认值。这是编译器不够聪明,无法在使用之前确定已分配的情况之一。

关于c# - 传递一个变量来捕获块,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13258713/

10-13 06:12