RF0201: Имя делегата сигнала заканчивается EventHandler
Генератор получает имя события, удаляя точный суффикс EventHandler из имени делегата.
Для C#-проекта с Reckfell.NET.Sdk 1.0.0. Сначала исправьте первую ошибку сборки: последующие сообщения могут быть её следствием.
Причина
Генератор получает имя события, удаляя точный суффикс EventHandler из имени делегата.
Исправление
Переименуйте Changed в ChangedEventHandler. Сгенерированное событие и SignalName остаются Changed.
Пример с ошибкой
Сохраните файл в тестовом C#-проекте и выполните dotnet build. Этот вариант намеренно не собирается.
Example.cs
using Reckfell;
namespace DiagnosticExamples.RF0201;
public partial class Example : Entity { [Signal] public delegate void Changed(int value); }Ожидаемые сообщения: RF0201.
Рабочий вариант
Замените ошибочный вариант этими файлами; не оставляйте оба объявления в проекте.
Example.cs
using Reckfell;
namespace DiagnosticExamples.RF0201;
public partial class Example : Entity
{
[Signal] public delegate void ChangedEventHandler(int value);
public void Publish() => EmitSignal(SignalName.Changed, 7);
}Результат
Подписчик Changed получает 7 после Publish(). В C# используется событие Changed, а не ChangedEventHandler.
Связанные материалы
Документация Reckfell EngineНаверх ↑