在BLL课程中,我写道:
Private List<T> GetData(string a,string b) { TryAction(()=>{ //Call BLL Method to retrieve the list of BO. return BLLInstance.GetAllList(a,b); }); }
protected void TryAction(Action action) { try { action(); } catch(Exception e) { // write exception to output (Response.Write(str)) } }
如何将TryAction()方法与泛型返回类型一起使用?
请有个建议.
解决方法
您需要使用Func来表示将返回值的方法.
以下是一个例子
private List<int> GetData(string a,string b) { return TryAction(() => { //Call BLL Method to retrieve the list of BO. return BLLInstance.GetAllList(a,b); }); } protected TResult TryAction<TResult>(Func<TResult> action) { try { return action(); } catch (Exception e) { throw; // write exception to output (Response.Write(str)) } }