异步方法不能使用ref和out的解决方法
异常处理汇总-后端系列:http://www.cnblogs.com/dunitian/p/4523006.html
应用场景==》后端现在都是用异步方法,那么分页是必不可少的,于是就有了这个问题
这个是官方说明:https://social.msdn.microsoft.com/Forums/en-US/d2f48a52-e35a-4948-844d-828a1a6deb74/why-async-methods-cannot-have-ref-or-out-parameters
这个基本上是无解,我只想到了折中的处理,如果有伙计能完美解决记得通知我一下,小弟感激不尽~
从需求入手==》目的是什么?为了得到数据+总数据量
那么可以封装一个类,这个类里面放这些东西:
参考:
以下是其他解决方案,你也可以试试:
可以嵌套方法
public Task<string> FooAsync(out int x, ref int y) { // Assign a value to x here, maybe change y return FooAsyncImpl(x, y); } private async Task<string> FooAsyncImpl(int x, int y) // Not ref or out! { }