将java代码转换为c#

fre*_*k91 -5 c# java android porting windows-phone-8

我正在将此代码从java(Android)移植到C#(Windows Phone),但我不知道如何做到这一点,这里是我正在尝试转换的代码:

  private void executeSingleOperation() {

        operation.execute(new OperationResult() {
            @Override
            public void onSuccess(Object obj) {
                //do something
                this.executeSingleOperation();
            }

            @Override
            public void onFail(Error err) {
                //andle the error
            }
    });
}
Run Code Online (Sandbox Code Playgroud)

OperationResult是一个接口,看起来像这样:

public interface OperationResult {

    public void onSuccess(Object obj);

    public void onFail(Error err); }
Run Code Online (Sandbox Code Playgroud)

提前致谢

Jon*_*eet 6

在C#中没有与匿名内部类相同的东西.对于单方法版本,您通常可以使用委托而不是接口,然后使用lambda表达式(或只是常规方法)来指定实现.

否则,只需使用常规类来实现接口.

在这种情况下,您可能希望将两者混合在一起,具有接口的实现,该接口本身在构造函数中占用两个委托 - 一个用于失败,一个用于成功.这实际上取决于上下文,我们目前没有很多.

我想说如果你对C#还不熟悉,你最好在控制台应用程序的环境中调查它作为一个简单的实验环境.