相关疑难解决方法(0)

为什么匿名方法中不允许使用out参数?

这不是使用匿名方法的ref或out参数调用方法的欺骗

我想知道为什么在匿名方法中不允许输出参数.不允许ref参数对我来说更有意义,但是out参数不是那么多.

你对此有何看法?

c# anonymous-methods out-parameters ref-parameters

14
推荐指数
2
解决办法
7307
查看次数

如何避免在匿名方法块中使用out参数?

以下方法无法编译.Visual Studio警告"可能无法在匿名方法中使用out参数".该WithReaderLock(Proc action)方法需要一个delegate void Proc().

public Boolean TryGetValue(TKey key, out TValue value)
{
    Boolean got = false;
    WithReaderLock(delegate
    {
        got = dictionary.TryGetValue(key, out value);
    });
    return got;
}
Run Code Online (Sandbox Code Playgroud)

获得这种行为的最佳方法是什么?(请不要提供有关线程安全词典的建议,这个问题一般是为了解决out参数问题).

c# anonymous-methods out-parameters

6
推荐指数
1
解决办法
3054
查看次数

使用匿名方法中的ref或out参数调用方法

这个问题与前几天我问的问题有关,我从中得到了一些很好的答案.

我需要以通用方式调用具有不同签名的各种Web方法.我希望能够将Web方法传递给具有委托参数的方法,但我不确定如何处理不同的签名.解决方案是使用lambdas(或匿名方法,因为我现在正在使用C#2).

这很好用,直到我需要我的匿名方法来调用带有out参数的web方法.由于此处说明的原因,您无法执行此操作.

所以我的问题是,除了创建一个没有引用的包装器方法或者从我的匿名方法调用params之外,是否有更简单的方法来实现这一点?

.net c#

5
推荐指数
1
解决办法
4291
查看次数