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