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

标签 c# unit-testing csv

我有一个已添加到 Visual Studio 单元测试项目的 CSV 文件。它有七列,看起来像这样:

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 文件可能具有 Unicode 编码。

尝试在记事本中打开它,然后在“另存为”下选择 UTF-8 或 ANSI。

关于c# - CSV 提供的数据源第一列中的奇数字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6999273/

相关文章:

c# - OmniSharp MSBuild ProjectManager 无法更新我的 .csproj 文件

unit-testing - Angular 2.0.0 - 测试 "imported by the module ' DynamicTestModule' "

带有子模块的 Python 模拟补丁

python - 将 csv 转换为 JSON 树结构?

mysql查询无法识别字符串

powershell - CSV按标题名称删除列

c# - 在 Linq to SQL 中重写 NHibernate 应用程序

c# - .NET Core 3.0 迁移错误 IAsyncEnumerable<T> 存在于 System.Interactive.Async 和 System.Runtime 中

c# - SortedDictionary 是否自动排序?

c# - 从命令行运行 MSTest 时出现 Fluent Nhibernate 异常