public void TestConvertToListOptions() { var options = new ConvertToListOptions <Account>(); options.MapColumn(x => x.Age, "年龄"); Assert.IsTrue(options.ColumnMapper.ContainsKey("年龄")); Assert.AreEqual("Age", options.ColumnMapper["年龄"].Name); Assert.AreEqual(typeof(int), options.ColumnMapper["年龄"].PropertyType); }
public void TestCustomTableMissRequireColumn() { var options = new ConvertToListOptions <Account>(); options.MapColumn(x => x.IsDeleted, "是否删除"); var convert = new DataConverter <Account>(); convert.ToList(customTable, options); Assert.Fail("期望抛出KeyNotFoundException,而实际没有抛出"); }
public void TestCustomTable() { var options = new ConvertToListOptions <Account>(); options .MapColumn(x => x.Age, "年龄", (age, row) => row["性别"] == "Male" ? 21 : 20) .MapColumn(x => x.Sex, "性别") .MapColumn(x => x.Memo, "备注", memo => memo == "帅哥" ? "Handsome" : "Beauty") .MapColumn(x => x.Roles, "角色", roleName => Role.Find(y => y.Name == roleName).ToList()); var convert = new DataConverter <Account>(); var lst = convert.ToList(customTable, options); Assert.AreEqual(2, lst.Count); Assert.AreEqual(21, lst.First().Age); Assert.AreEqual(Sex.Male, lst.First().Sex); Assert.AreEqual("帅哥", lst.First().Memo); Assert.AreEqual(20, lst.Last().Age); Assert.AreEqual(Sex.Female, lst.Last().Sex); Assert.AreEqual("美女", lst.Last().Memo); }