public void TestWhere3() { var repository = new RepositoryMsSql <DictInfo2>(Conn); int?id = 106071; var rst = repository.Where(x => x.DictID == id); Assert.Single(rst); }
public void TestWhereAndFind() { var repository = new RepositoryMsSql <DictInfo>(Conn); var rst = repository.Where(x => x.DictID > 106087); var model = repository.Find(106088);//Find 是根据主键获取记录,所以主键上要有 Key标记。 Assert.Equal(model.Remark, rst.Find(x => x.DictID == 106088)?.Remark); }
public void TestTimeStamp() { RepositoryMsSql <TestStamp> repoStamp = new RepositoryMsSql <TestStamp>(Conn); var rst = repoStamp.Where(x => true); bool b = rst.Any(x => x.ROWVERSION < 1); Assert.False(b); }
public void TestExpression() { var repository = new RepositoryMsSql <DictInfo>(Conn); Expression <Func <DictInfo, bool> > expression = x => x.DictID > 106071; expression = expression.And(x => x.DictName.Contains("老总")); var rst = repository.Where(expression); bool b = rst.Count > 0; Assert.True(b); }
public void TestWhere() { var repository = new RepositoryMsSql <DictInfo>(Conn); var ida = new List <int>() { 106071, 106072 }; var rst = repository.Where(x => ida.Contains(x.DictID)); Assert.Equal(2, rst.Count); }
public void TestWhere7() { var repository = new RepositoryMsSql <DictInfo2>(Conn); OrderEnum orderEnum = OrderEnum.optionA; var rst = repository.Where(x => x.OrderNum == orderEnum); Assert.NotEmpty(rst); foreach (var item in rst) { Assert.Equal(OrderEnum.optionA, item.OrderNum); } }
public void TestWhereWithSomeFields() { var repository = new RepositoryMsSql <DictInfo>(Conn); var rst = repository.Where(x => x.CreateTime > new DateTime(2018, 12, 1), x => x.DictID, x => x.DictName);//只查询 DictID DictName 两个字段 Assert.False(0 == rst.Count); Assert.Equal(0, rst.Count(x => !string.IsNullOrEmpty(x.Remark))); var first = rst.First(); var model = repository.Find(first.DictID); Assert.Equal(first.DictName, model.DictName); }
public void TestWhereSelect() { var repository = new RepositoryMsSql <DictInfo>(Conn); var rst = repository.WhereSelect(x => x.DictID >= 106071, x => x.DictName);//投影查询(只查询某些字段)可投影为匿名类型 var rstfull = repository.Where(x => x.DictID >= 106071); Assert.False(0 == rstfull.Count); Assert.Equal(rst.Count, rstfull.Count); bool r = rst.Contains(rstfull.First().DictName); Assert.True(r); var ll2 = repository.WhereSelect(x => x.DictName.Contains("哈哈") && x.Deleted, x => new { x.DictName, x.DictID }).ToDictionary(x => x.DictID, x => x.DictName); }
public void TestWhereAndAll() { var repository = new RepositoryMsSql <DictInfo>(Conn); var rst = repository.Where(x => x.DictID > 106091 && !x.Deleted); var model = rst.FirstOrDefault(); Assert.False(null == model); var all = repository.All(); var model2 = all.Find(x => x.DictID == model.DictID); Assert.False(null == model2); Assert.Equal(model.Deleted, model2.Deleted); Assert.Equal(model.CreateTime, model2.CreateTime); Assert.Equal(model.Remark, model2.Remark); Assert.Equal(model.DictName, model2.DictName); }