コード例 #1
0
ファイル: PocoExpandoTests.cs プロジェクト: aalex675/NPoco
 public void CanGetPocoDataForPocoExpando()
 {
     dynamic result = new PocoExpando();
     result.Name = "Name1";
     PocoData pd = Database.PocoDataFactory.ForObject(result, "UserId");
     Assert.AreEqual(pd.Columns.Count, 2);
     Assert.True(pd.Columns.ContainsKey("UserId"));
     Assert.True(pd.Columns.ContainsKey("Name"));
 }
コード例 #2
0
        public void CanGetPocoDataForPocoExpando()
        {
            dynamic result = new PocoExpando();

            result.Name = "Name1";
            PocoData pd = Database.PocoDataFactory.ForObject(result, "UserId");

            Assert.AreEqual(pd.Columns.Count, 2);
            Assert.True(pd.Columns.ContainsKey("UserId"));
            Assert.True(pd.Columns.ContainsKey("Name"));
        }
コード例 #3
0
ファイル: PocoExpandoTests.cs プロジェクト: zzia615/NPoco
        public void CanGetPocoDataWithTypeForPocoExpando()
        {
            dynamic result = new PocoExpando();

            result.Name = "Name1";
            PocoData pd = Database.PocoDataFactory.ForObject(result, "UserId", true);

            Assert.AreEqual(pd.Columns.Count, 2);
            Assert.True(pd.Columns.ContainsKey("UserId"));
            Assert.AreEqual(typeof(object), pd.Columns["UserId"].ColumnType);
            Assert.True(pd.Columns.ContainsKey("Name"));
            Assert.AreEqual(typeof(string), pd.Columns["Name"].ColumnType);
        }
コード例 #4
0
ファイル: DictionaryMapper.cs プロジェクト: xf599/NPoco
        public override object Map(DbDataReader dataReader, RowMapperContext context)
        {
            IDictionary <string, object> target = new Dictionary <string, object>(StringComparer.OrdinalIgnoreCase);

            if (context.Type == typeof(object))
            {
                target = new PocoExpando();
            }

            for (int i = 0; i < _posNames.Length; i++)
            {
                var converter = context.PocoData.Mapper.Find(x => x.GetFromDbConverter(typeof(object), dataReader.GetFieldType(_posNames[i].Pos))) ?? (x => x);
                target.Add(_posNames[i].Name, dataReader.IsDBNull(_posNames[i].Pos) ? null : converter(dataReader.GetValue(_posNames[i].Pos)));
            }

            return(target);
        }
コード例 #5
0
ファイル: PocoExpandoTests.cs プロジェクト: aalex675/NPoco
 public void IsNewReturnsTrue()
 {
     dynamic results = new PocoExpando();
     Assert.True(Database.IsNew<dynamic>(results));
 }
コード例 #6
0
        public void IsNewReturnsTrue()
        {
            dynamic results = new PocoExpando();

            Assert.True(Database.IsNew <dynamic>(results));
        }