2016-04-28 3 views
0

Я декомпилировал программу, построенную с .NET 1.1, и мне нужно переписать в .NET 2.0 или выше. Мне трудно понять этот код, и это не моя сильная сторона. Visual Studio жалуетсяПреобразование события из .net 1.1 в .net 2.0 или выше

"Событие 'dataTransfering' может появиться только на стороне + = или - ="

public delegate void DataTransferringDelegate(string name, long transBytes, long totalBytes); 

public event DataTransferringDelegate dataTransferring 
    { 
     [MethodImpl(32)] 
     add 
     { 
      this.dataTransferring = (FtpIO.DataTransferringDelegate)Delegate.Combine(this.dataTransferring, value); 
     } 
     [MethodImpl(32)] 
     remove 
     { 
      this.dataTransferring = (FtpIO.DataTransferringDelegate)Delegate.Remove(this.dataTransferring, value); 
     } 
    } 

public void upload(string fileName, bool resume) 
{ 
    long length; 
    long num2 = 0L; 
    // some code removed here 
    this.dataTransferring(fileName, num2, length); 
} 

Так как исправить этот код в .NET 2.0?

ответ

1

Что вы видите how compiler implements Event. Вам это не нужны, компилятор создаст их автоматически.

Пересмотрите свой код и удалить эти детали, как это:

public delegate void DataTransferringDelegate(string name, long transBytes, long totalBytes); 

public event DataTransferringDelegate dataTransferring; 

public void upload(string fileName, bool resume) 
{ 
    long length; 
    long num2 = 0L; 
    // some code removed here 
    dataTransferring(fileName, num2, length); 
} 
Смежные вопросы