JavaScript-LINQ:can';无法获取SingleOrDefault以返回单个值

JavaScript-LINQ:can';无法获取SingleOrDefault以返回单个值,javascript,c#,angularjs,linq,Javascript,C#,Angularjs,Linq,我正在使用Javascript获取LINQ功能。但是,我无法让SingleOrDefault()在我的代码中工作。它返回多个值 以下是我的(AngularJS)代码: SingleOrDefault()返回多个值,即使我确信只有一个触点满足该条件 有没有人使用这个库时遇到过同样的问题?以下是正在使用的XML示例: <contacts> <notification/> <address> <notification/>

我正在使用Javascript获取LINQ功能。但是,我无法让SingleOrDefault()在我的代码中工作。它返回多个值

以下是我的(AngularJS)代码:

SingleOrDefault()返回多个值,即使我确信只有一个触点满足该条件

有没有人使用这个库时遇到过同样的问题?以下是正在使用的XML示例:

  <contacts>
    <notification/>
    <address>
      <notification/>
      <addressId>400059994</addressId>
      <addressLines>My Address
      </addressLines>
      <country>9000</country>
      <county>East Sussex</county>
      <postcode>BN12 1PP</postcode>
      <town>Hove</town>
    </address>
    <contactId>400161871</contactId>
    <emailAddress>myemail@test.com</emailAddress>
    <isAccountsContact>false</isAccountsContact>
    <isAirlineListContact>false</isAirlineListContact>
    <isDefaultInvoicingContact>false</isDefaultInvoicingContact>
    <isDeleted>false</isDeleted>
    <isMarketingRegistered>true</isMarketingRegistered>
    <isPrimaryBrokerContact>false</isPrimaryBrokerContact>
    <isPrimaryContact>true</isPrimaryContact>
    <telephoneNumber>01273 123123</telephoneNumber>
    <website>www.fromthiscomesthat.co.uk</website>
  </contacts>
  <contacts>
    <notification/>
    <contactId>400161872</contactId>
    <customerContactType>15000</customerContactType>
    <forename>we</forename>
    <isAccountsContact>false</isAccountsContact>
    <isAirlineListContact>false</isAirlineListContact>
    <isDefaultInvoicingContact>false</isDefaultInvoicingContact>
    <isDeleted>false</isDeleted>
    <isMarketingRegistered>true</isMarketingRegistered>
    <isPrimaryBrokerContact>true</isPrimaryBrokerContact>
    <isPrimaryContact>false</isPrimaryContact>
    <surname>wew</surname>
    <title>A Test Contract</title>
  </contacts>

400059994
我的地址
9000
东苏塞克斯
BN12 1PP
霍夫
400161871
myemail@test.com
假的
假的
假的
假的
真的
假的
真的
01273 123123
www.fromthiscomesthat.co.uk
400161872
15000
我们
假的
假的
假的
假的
真的
真的
假的
wew
测试合同

我找到了解决办法。我更改了一行以添加默认值:

SingleOrDefault(null, function (x) { return x.isPrimaryContact })
我找到了一些文档,不过我觉得可以更清楚一些。

我只想使用 很棒的文档,功能非常强大。 从去年infoq的一篇文章中找到它们:

你能举一个简短但完整的例子来说明这个问题吗?(作为源数据的简单数组就足够了…)上面添加了XML。如您所见,只有一个联系人的isPrimaryContact设置为true。我刚刚注意到SingleOrDefault()可能根本不会返回任何结果,而不是返回多个联系人。这个库没有太多文档…我建议了一个简短但完整的示例-为什么要使用XML而不是像数组这样更简单的数据源?这样你就可以把整个事情放到一个可运行的片段中…它来自AngularJS服务调用。我不明白为什么这会阻止你编写一个不需要AngularJS的简短但完整的示例。。。我看不出有任何迹象表明这个问题与XML或AngularJS有关——如果您在编写一个简短但完整的示例时发现它确实与XML或AngularJS有关,那么您将学到一些非常重要的东西。
SingleOrDefault(null, function (x) { return x.isPrimaryContact })