2012-02-26 48 views

回答

15

試試這個:

int currentIteration = TestContext.DataRow.Table.Rows.IndexOf(TestContext.DataRow); 
+2

謝謝,這工作:) – user1039580 2012-02-26 18:16:18

+0

您必須查看調試器和檢查才能找到。我很快就沒有看到它。 MSDN甚至沒有提到這個有用的對象表。 – 2017-10-17 00:16:53

0
private readonly PropertyInfo _rowIdProp = typeof(System.Data.DataRow).GetProperty("rowID", BindingFlags.NonPublic | BindingFlags.GetProperty | BindingFlags.Instance); 

.. 

// No datarow means only one iteraton 

var currentIteration = DataRow == null ? 1 : (Int64)_rowIdProp.GetValue(DataRow, null); 
0

這是沒有的DataSource屬性,但我可以告訴你,它通過迭代它自身沒有for循環

 for (int i = 0; i < x; i++) 
     { 
      int currentIteration = TestContext.DataRow.Table.Rows.IndexOf(TestContext.DataRow); 
      DataTable dt = TestContext.DataRow.Table; 
      int rowCount = dt.Rows.Count; 

      DataRow secondRow = dt.Rows[i]; 
      string name = secondRow["name"].ToString(); 
      int Balance = Convert.ToInt32(secondRow["Balance"]); 
      int Amount = Convert.ToInt32(secondRow["Amount"]); 
      int Count = Convert.ToInt32(secondRow["Count"]); 
      Assert.AreEqual(Balance, Amount); 

     } 
相關問題