2017-12-18 15 views
0

저는 언젠가 이것을보고 있었고 제가 누락 된 것이 정말 간단하다는 것을 알고 있습니다. 코드는 이전 개발자가 떠나기 전에 작동했지만 지금은 iPad에 넣어야합니다. 작동하지 않습니다. Mac 용 Visual Studio를 사용하고 있습니다.Xamarin/Realm - 유형을 제네릭 유형 또는 메소드의 유형 매개 변수 'T'로 사용할 수 없습니다.

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)

+0

이 코드는 이전에 실제로 작동 했습니까? 'All ()'메소드에는'Realms.RealmObject' 유형의 것이 필요하고'PatienSummary'는 분명히 없습니다. –

+0

내가 아는 전부는 테스터에게 코드의 일부 버전이 배포되어 어딘가에 작동한다는 것입니다. –

+0

그런 다음 버전 기록을 확인하고 변경 사항을 살펴 보시겠습니까? –

답변

1

개체는 RealmObject에서 상속해야합니다. 그렇지 않으면 Realm Database에서 직접 저장하고 액세스 할 수 없습니다. 자세한 내용은 https://realm.io/docs/dotnet/latest/#models에서 확인할 수 있습니다.