C# CSV提供的数据源第一列中的奇数字符
我有一个CSV文件,我将它添加到VisualStudio单元测试项目中。它有七列,如下所示:C# CSV提供的数据源第一列中的奇数字符,c#,unit-testing,csv,C#,Unit Testing,Csv,我有一个CSV文件,我将它添加到VisualStudio单元测试项目中。它有七列,如下所示: assessmentitemid,reviewer1,reviewer2,reviewer3,reviewer4,reviewer5,reviewer6 [TestMethod] [DeploymentItem("IntraclassCorrelationValues.csv")] [DataSource("Microsoft.VisualStudio.TestTools.Da
assessmentitemid,reviewer1,reviewer2,reviewer3,reviewer4,reviewer5,reviewer6
[TestMethod]
[DeploymentItem("IntraclassCorrelationValues.csv")]
[DataSource("Microsoft.VisualStudio.TestTools.DataSource.CSV", "|DataDirectory|\\IntraclassCorrelationValues.csv", "IntraclassCorrelationValues#csv", Microsoft.VisualStudio.TestTools.UnitTesting.DataAccessMethod.Sequential)]
public void TestMethod1() {
object val = TestContext.DataRow["assessmentitemid"];
}
我的测试方法如下所示:
assessmentitemid,reviewer1,reviewer2,reviewer3,reviewer4,reviewer5,reviewer6
[TestMethod]
[DeploymentItem("IntraclassCorrelationValues.csv")]
[DataSource("Microsoft.VisualStudio.TestTools.DataSource.CSV", "|DataDirectory|\\IntraclassCorrelationValues.csv", "IntraclassCorrelationValues#csv", Microsoft.VisualStudio.TestTools.UnitTesting.DataAccessMethod.Sequential)]
public void TestMethod1() {
object val = TestContext.DataRow["assessmentitemid"];
}
访问列assessmentitemid时引发错误。我检查了表,所有列都正确映射,除了assessmentitemid。其实际列名如下:
assessmentitemid
为了让DataSource属性正确解析CSV文件,我还必须对其执行其他操作吗?这似乎是数据文件的问题
更改源CSV文件中的字符编码并重新保存,我认为这会为您解决问题。看起来.CSV文件可能有Unicode编码
尝试在记事本中打开它,然后在“另存为”下选择UTF-8或ANSI。这看起来像unicode字节顺序标记。您不需要在记事本中打开以另存为ANSI,只需使用Visual Studio的文件->高级保存选项即可。切换到西欧(Windows)代码页1252,您就完成了!