Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/312.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# CSV提供的数据源第一列中的奇数字符_C#_Unit Testing_Csv - Fatal编程技术网

C# CSV提供的数据源第一列中的奇数字符

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

我有一个CSV文件,我将它添加到VisualStudio单元测试项目中。它有七列,如下所示:

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,您就完成了!