Семантика вашего запроса выглядит хорошо для меня; Очевидно, что получение внутренней ошибки поставщика не является предполагаемым поведением! Я ожидал бы более явного представления о том, что EF не сможет перевести ваш запрос в операцию хранилища, если это на самом деле проблема.
Другой способ сделать то, что вы хотите, будет:
var names = new[] {"Name1", "Name2"};
var nameCount = names.Length;
var ctx = new DatabaseContext("EFPlayingEntities");
var result = ctx.As
.Where(a => a.Bs
.Select(b => b.SomeName)
.Intersect(names)
.Count() == a.Bs.Count());
(получить каждый A
такой, что пересечение его B
s 'имен с фиксированным списком дает все B
s)
, хотя я не пробовал это чтобы убедиться, что EF может успешно выполнить этот .
Другой способ:
var names = new[] {"Name1", "Name2"};
var ctx = new DatabaseContext("EFPlayingEntities");
var result = ctx.As
.Where(a => !a.Bs.Select(b => b.SomeName).Except(names).Any());
(получить каждый A
, чтобы список его B
s 'имена сводятся к нулю, вынимая фиксированный список)
также не проверен.
Чтобы ваш код работал, вам нужно
legend(x=min(df$Year), y=max(df$N), legend=c('a'), pch=1, lty=1)
x=1
находится вне диапазона вашей оси x. Но, конечно, вы не должны размещать свою легенду в верхнем левом углу в этом случае:
"topleft"
. Ницца. – buhtz 15 August 2016 в 13:27