Xamarin / Realm - 该类型不能用作泛型类型或方法中的类型参数“T”

时间:2017-12-18 21:21:57

标签: c# generics xamarin.forms realm

我现在已经看了一段时间了,知道有一些我很想念的东西很简单。代码在上一个开发人员离开之前就已经开始了,但是现在我需要在iPad上推出它,它不起作用。我正在使用Visual Studio for Mac。

public class DemoPatientService : BaseService, IPatientService
{
    public ObservableCollection<PatientSummary> MockPatientSummary;

    public DemoPatientService()
    {
        MockPatientSummary = realm.All<PatientSummary>().ToObservableCollection();
    }
}

public class PatientSummary : IPatientSummary
{
    public string PatientID { get; set;}
}

public interface IPatientSummary
{
    string PatientID
}

public class BaseService
{
    protected readonly Realm realm;

    public BaseService()
    {
        var config = new RealmConfiguration();
            config = new RealmConfiguration(MYWSettings.Instance.DemoDatabasePath);

        realm = Realm.GetInstance(config);
    }
}
  

错误CS0311:类型'VSTSQL.Data.Mobile.Models.PatientSummary'不能在泛型类型或方法'Realm.All()'中用作类型参数'T'。没有从'PatientSummary'到'Realms.RealmObject'的隐式引用转换。 (CS0311)

1 个答案:

答案 0 :(得分:1)

您的对象必须继承自RealmObject。否则,它将无法直接存储并可从Realm数据库访问。您可以在https://realm.io/docs/dotnet/latest/#models找到更多信息。