2

以下に for each ループがあり、例外がスローされた後にこれを続行して、次の次の配列インデックスに進み、システムが失敗しないようにする方法を知りたいです。

try
{
//making name array and other checks 
    foreach (string s in namearry)
    {
        var timelineData = oAuthTwitterWrapper.GetMyTimeline(s);
        TwitterData.TimeLineData(timelineData, s, int.Parse(dr["ClientId"].ToString()));
        //  var followersId = oAuthTwitterWrapper.GetFolowersId(s);
        // var loc = oAuthTwitterWrapper.GetFolowersLoc(followersId);
        //  TwitterData.Follower(loc, s);
    }
}
catch(Exception ex)
{
    //logging exception 
}
4

4 に答える 4

3

理想的には、すべての例外を回避しようとします。あなたの場合、 foreach ループ内で例外を処理できます。次の例では、最初に発生する例外を回避するために必要なチェックを追加しました。このような

foreach (string s in namearry)
{
    try
    {
        var timelineData = oAuthTwitterWrapper.GetMyTimeline(s);
        if(timelineData!=null)
        {
             int clientID;
             if(int.TryParse(dr["ClientId"].ToString(), out clientID))
             {
                  TwitterData.TimeLineData(timelineData, s, clientID);            
             }
        }
    }
    catch(Exception exp)
    {
        //do logging here.
    }
}
于 2013-08-28T10:27:08.753 に答える