将CloudStorageAccount创建内容包装在try:catch块中

时间:2018-09-03 19:19:51

标签: c# azure

我有以下C:控制台程序:

// use document.querySelectorAll() to retrieve all the elements
document.querySelectorAll(".div1,.div2,.div3")
  // use NodeList.forEach() to iterate over all the
  // returned Nodes
  .forEach(
    // using an Arrow function ("el" is a reference to the
    // current Node of the NodeList), here we update the
    // textContent of each Node to the "value" variable:
    (el) => el.textContent = value);
// and set the document.title to that same variable:
document.title = value;

如果连接字符串有问题或与Azure有关的问题,我想在这里尝试/阻止。

很显然,您不能在此类的顶部插入try。 那么,我该如何处理错误?

我似乎也无法将storageAccount移至Main。 当我尝试得到“}期望”时

enter image description here

2 个答案:

答案 0 :(得分:1)

与其将Parse方法包装在try-catch部分中以处理连接字符串问题,不如查看CloudStorageAccount类静态TryParse方法。它将指示是否可以解析连接字符串。

像这样实现

If(CloudStorageAccount.TryParse(CloudConfigurationManager.GetSetting("StorageConnectionString"), out storageAccount))
{
     //use the storageAccount here
}

答案 1 :(得分:0)

由于错误privatestatic不能在方法内部使用而显示错误。

因此,您可以在CloudStorageAccount内声明try-catch对象,如下所示:

static void Main(string[] args)
{
    try
    {
        CloudStorageAccount storageAccount = CloudStorageAccount.Parse(CloudConfigurationManager.GetSetting("StorageConnectionString"));
    }
    catch (Exception)
    {                
        throw;
    }
}

另一种方法是在Main外部声明对象,然后在try实例化该对象

private static CloudStorageAccount storageAccount;
static void Main(string[] args)
{
    try
    {
        storageAccount = CloudStorageAccount.Parse(CloudConfigurationManager.GetSetting("StorageConnectionString"));
    }
    catch (Exception)
    {                
        throw;
    }
}