0

このシステムテストを実行しようとしています。デバイス情報がデータベースにあることを確認しました。

テストを実行すると、常にエラーメッセージが表示されます。

テストメソッドSystemTests.Tests.EmailNotification.TestAddDeviceToAccountが例外をスローしました:System.InvalidOperationException:シーケンスに要素が含まれていません。

助けてください

public void TestAddDeviceToAccount()//Test to AssDeviceToAccount
{
    //string Fccid = "OPS2";
    //string SerialNumber = "101";
    //string emailAddress = "m.koneru2@spectrumBridge.com";

    using (WSPlusEntities dc = WSPlusEntities.GetContext())
    {
         Device d1 = dc.Devices.Where(d => d.FCCID == "OPS2" && d.SerialNumber == "101").Single();
         d1.NetworkId = 1;
         //var deviceList = dc1.Devices.Where(d => d.FCCID == "OPS2" && d.SerialNumber == "102").ToList();
         //foreach (var d2 in deviceList)
         //d2.NetworkId = 1;
         dc.SaveChanges();
    } 
}
4

1 に答える 1

0

エラーメッセージから、linqクエリがデータベースから要素を返さないように見えます。デバイス情報がそこにあることを確認しましたが、シーケンス(dc.Devices)が空を返しています。

これらを確認してください。

  • データは間違いなく正しいデータベーステーブルにあります
  • Where()フィルタリングが間違っている可能性があるため、句を削除してください
  • app.configをチェックして、正しいデータベースを指していることを確認します
于 2012-05-16T17:29:50.427 に答える