reckfellENGINE

RF0106: Explicit interface implementation cannot be exported

Export is on an interface-qualified member rather than an ordinary script property.

On this page

For a C# project using Reckfell.NET.Sdk 1.0.0. Fix the first build error first: later messages may be a consequence.

Cause

Export is on an interface-qualified member rather than an ordinary script property.

Fix

Move Export to a named property. Forward the explicit interface implementation to it.

Failing example

Save the file in a test C# project and run dotnet build. This version intentionally fails to build.

Example.cs
C#
using Reckfell;

namespace DiagnosticExamples.RF0106;

public interface IAmount { int Amount { get; set; } }
public partial class Example : Entity, IAmount { [Export] int IAmount.Amount { get; set; } }

Expected messages: RF0106.

Working version

Replace the failing version with these files; do not keep both declarations in the project.

Example.cs
C#
using Reckfell;

namespace DiagnosticExamples.RF0106;

public interface IAmount { int Amount { get; set; } }
public partial class Example : Entity, IAmount
{
    [Export] public int Amount { get; set; } = 7;
    int IAmount.Amount { get => Amount; set => Amount = value; }
}

Result

Writing Amount through IAmount is visible through Get("Amount"). The ordinary property is exported.

All C# diagnostics · C# guide

Reckfell Engine documentationBack to top ↑
QUICK LINKSGetting startedEntity hierarchyC# & .NET 10Scenes and prefabs
Reckfell guides and full API K
reckfellENGINE
RECKFELL ACCOUNT

Sign in

Sign in to your Reckfell account.

One account for the entire Reckfell platform.