Пример #1
0
        public async Task TestJsonArrayAdd()
        {
            var dr = await CreateDriver();

            var m = new MySubmodel()
            {
                JsonArray2 = new JArray(1, 2, 2),
            };

            await dr.Update <MyModel>()
            .SetField(x => x.JsonModel, m)
            .AddToList(x => x.JsonModel.JsonArray2, 3)
            .RemoveAllFromList(x => x.JsonModel.JsonArray2, 2)
            .Where(x => x.Id == 1)
            .ExecuteAsync();

            var res = await dr.From <MyModel>()
                      .Select()
                      .Where(x => x.Id == 1)
                      .ToListAsync();

            Assert.Collection(res,
                              x => Assert.Collection(x.JsonModel.JsonArray2,
                                                     y => Assert.Equal(1, y),
                                                     y => Assert.Equal(3, y)));
        }
Пример #2
0
        private async Task <MySubmodel> FillJson(Driver dr)
        {
            var submodel = new MySubsubmodel()
            {
                Name = "sub",
            };

            var model = new MySubmodel()
            {
                Name          = "str",
                Number        = 2,
                Decimal       = 1.234M,
                MySubsubmodel = submodel,
                JsonObject2   = JObject.FromObject(new { a = 1 }),
                JsonArray2    = JArray.FromObject(new[] { 1, 2, 3 }),
            };

            await dr.Update <MyModel>()
            .SetField(x => x.JsonModel, model)
            .Where(x => x.Id == 1)
            .ExecuteAsync();

            return(model);
        }