天天看点

异步方法不能使用ref和out的解决方法

异步方法不能使用ref和out的解决方法

应用场景==》后端现在都是用异步方法,那么分页是必不可少的,于是就有了这个问题

这个是官方说明:https://social.msdn.microsoft.com/Forums/en-US/d2f48a52-e35a-4948-844d-828a1a6deb74/why-async-methods-cannot-have-ref-or-out-parameters

这个基本上是无解,我只想到了折中的处理,如果有伙计能完美解决记得通知我一下,小弟感激不尽~

从需求入手==》目的是什么?为了得到数据+总数据量

那么可以封装一个类,这个类里面放这些东西:

异步方法不能使用ref和out的解决方法

参考:

异步方法不能使用ref和out的解决方法
异步方法不能使用ref和out的解决方法

以下是其他解决方案,你也可以试试:

1

<code>可以嵌套方法</code>

2

3

4

5

6

7

8

9

<code>public</code> <code>Task&lt;</code><code>string</code><code>&gt; FooAsync(</code><code>out</code> <code>int</code> <code>x, </code><code>ref</code> <code>int</code> <code>y)</code>

<code>{</code>

<code>    </code><code>// Assign a value to x here, maybe change y</code>

<code>    </code><code>return</code> <code>FooAsyncImpl(x, y);</code>

<code>}</code>

<code>private</code> <code>async Task&lt;</code><code>string</code><code>&gt; FooAsyncImpl(</code><code>int</code> <code>x, </code><code>int</code> <code>y) </code><code>// Not ref or out!</code>

本文转自毒逆天博客园博客,原文链接:http://www.cnblogs.com/dunitian/p/5556909.html,如需转载请自行联系原作者

继续阅读