我想寫一個方法try
catch
其中,我從Web服務獲取數據,並返回數據爲string[]
。「不是所有的代碼路徑都返回一個值」錯誤BLL
我很努力地返回值。你介意看我的代碼?:
public static string[] UserDetailsWebService(string username, string password)
{
string[] array = null;
using(WebServiceUser.Users use = new WebServiceUser.Users())
{
try
{
WebServiceUser.UserGridList Grid = use.GetUserDetails(username, password, username);
array = new string[] { Grid.FirstName, Grid.LastName };
}
catch (Exception ex)
{
if (ex is NullReferenceException || ex is HttpResponseException
|| ex is WebException || ex is System.Net.Sockets.SocketException)
{
//throws etc...
}
else
{
//throws etc...
}
}
return array;
}
}
的問題是,我得到這個錯誤:
並非所有的代碼路徑返回一個值。
如果拋出異常,'return'不會被擊中。你還需要'try/catch'之外的'return array'嗎? –
我還會捕獲具有catch-em-all'catch(Exception)'塊的特定異常。這會讓你的代碼更清潔。 –
嘿傢伙,問題不是catch(異常),我只需要返回從web服務取得的數據,這意味着string []數組,我不知何故在那裏做錯了什麼,我不能填充數組並返回它。 – SmackDat