У меня интенсивный фон Java, поэтому простите меня, если я пропущу что-то очевидное на С#, но мое исследование никуда не денется. Я пытаюсь использовать реактивную библиотеку Rx.NET. Компилятор не жалуется на IObservable
, но с вызовом метода zip
. Это бросает "... вам не хватает ссылки на директиву или сборку?"
Я проходил через пространства имен, и я не могу найти то, что ищет. Я не могу найти System.Reactive
, который также выдает ошибку, если используется, и все ссылки уже включены для этого приложения Windows 8.1. Может кто-то, пожалуйста, дайте мне понять, что не так?
public sealed class EventEngine
{
private static readonly EventEngine singleton = new EventEngine();
public static EventEngine get()
{
return singleton;
}
public IObservable<MusicNote> CurrentKey { get; set; }
public IObservable<Scale> CurrentScale { get; set; }
public IObservable<AppliedScale> CurrentAppliedScale
{
get
{
return CurrentScale.zip(CurrentKey,
(s, k) => AppliedScale.getAppliedScale(k, s));
}
}
private EventEngine() {}
}
* ОБНОВЛЕНИЕ *
Вот рабочая версия после рассмотрения ответов.
public sealed class EventEngine
{
private static readonly EventEngine singleton = new EventEngine();
public static EventEngine get()
{
return singleton;
}
public IObservable<MusicNote> CurrentKey { get; set; }
public IObservable<Scale> CurrentScale { get; set; }
public IObservable<AppliedScale> CurrentAppliedScale
{
get
{
return Observable.Zip(CurrentScale, CurrentKey,
(s, k) => AppliedScale.getAppliedScale(s,k));
}
}
private EventEngine() {}
}