2012-11-29 25 views
0

提前道歉,因爲我相當新,所以想象這是一個傻瓜。使用FileHelpers如何將單個數據傳遞給變量?

無論如何,我希望將單個逗號分隔的數據傳遞到字段/變量中。我正在使用FileHelpers並讓它工作並傳回數據,但我的C#技能現在讓我失望了。

CSV數據是:

湯姆,密碼

二,PassTwo

三,PassThree

而且我的代碼是:

[DelimitedRecord(",")] 
    public class UserDetailsLogin 
    { 
     FileHelperEngine engine = new FileHelperEngine(typeof(UserDetails)); 

     [Test] 
     public void TestData() 
     { 
      string User1; 
      string User2; 
      string User3; 
      string Password1; 

      UserDetails[] res = engine.ReadFile("TestData.csv") as UserDetails[]; 
      foreach (UserDetails user in res) 
      { 
       User1 = user.UserName; 
       Console.WriteLine(User1); 
      } 
     } 
    } 

    [DelimitedRecord(",")] 
    public class UserDetails 
    { 
     public string UserName; 

     public string Password; 
    } 

其中,用於檢查寫入控制檯的目的:

湯姆

兩個

我怎麼能夠單獨的數據傳遞給變量,例如:

用戶1 = 「湯姆」

密碼1 = 「密碼」

User2 =「Two」等等。

回答

0

你的問題和你的代碼都不是很清楚。

我想你是問如何確認您已經閱讀到UserDetails數組中的值,在這種情況下,你可以使用下面的測試:

[TestFixture] 
public class UserDetailsTests 
{ 
    [Test] 
    public void TestData() 
    { 
     FileHelperEngine engine = new FileHelperEngine(typeof(UserDetails)); 
     UserDetails[] res = engine.ReadFile("TestData.csv") as UserDetails[]; 

     Assert.AreEqual(res[0].UserName, "User 1"); 
     Assert.AreEqual(res[0].Password, "Password 1"); 
     Assert.AreEqual(res[1].UserName, "User 2"); 
     Assert.AreEqual(res[2].UserName, "User 3"); 
    } 
}