2014-02-14 47 views
2

我是微風的初學者,並有以下情況的問題 我有以下模型。人員實體可以分配多個項目。一個項目可以有多個任務。每個任務都有一個優先級。我想讓所有至少有一個項目的人員擁有至少一個優先級代碼爲「高」的任務。微風謂詞在多層次的兒童

我發現我可以使用'任何'或'一些'與二級兒童一起工作。

var p1 = new breeze.Predicate.create('projects', 'some', 'client.code', 'Equals', 'ABC'); 

上面的代碼ABC正確地返回了客戶與項目的客戶端。但在我的情況下,我將不得不將任意深度的「任何」應用於任務,而且我無法找到正確的方法。 感謝您的幫助

回答

4

您可以嵌套多個任何/所有使用語法:

var query = breeze.EntityQuery.from('persons') 
var p = new breeze.Predicate('projects', 'any', new breeze.Predicate('tasks','any','priority','>',1)); 
query = query.where(p); 

你必須改變你的控制器的MaxAnyAllExpressionDepth屬性允許多個任何級別:

[BreezeNHController(MaxAnyAllExpressionDepth = 5)]