protected override void Serialize(object target, HeaderdFileContext context)
        {
            Argument.NotNull(context, nameof(context));

            if (string.IsNullOrEmpty(_keyName))
            {
                return;
            }
            _listBuilder?.Begin(GetValue(target), true);

            try
            {
                var writer = context.CurrentWriter;

                foreach (var obj in _listBuilder?.Objects ?? Array.Empty <object>())
                {
                    var cobj = _converter?.Convert(obj);
                    if (cobj == null)
                    {
                        continue;
                    }
                    writer.Add(_keyName, cobj);
                }
            }
            finally
            {
                _listBuilder?.End();
            }
        }
Esempio n. 2
0
        static void Main(string[] args)
        {
            var mySuperCar = new Car(new ExtraCarFactory());

            mySuperCar.ShowInfo();

            var library = new Library();
            var xml     = library.GetBooksXML();
            var adapter = new BookAnalyzerAdapter(new BookAnalyzer());
            var book    = adapter.GetOldestBook(xml);

            var convert = new SimpleConverter();

            convert.Convert("cats.mp4", "MPEG4");

            IYesterdayRate yesterdayRate = new YesterdayRateProxy(new YesterdayRate());
            var            list          = yesterdayRate.GetRate();

            foreach (var rate in list)
            {
                Console.WriteLine(rate);
            }

            Console.ReadKey(true);
        }
Esempio n. 3
0
        protected override void Serialize(object target, IniContext context)
        {
            Argument.NotNull(context, nameof(context));

            var value = GetValue(target);

            context.File = context.File.SetData(_section, _key, _converter?.Convert(value) ?? Array.Empty <string>());
        }
Esempio n. 4
0
        public override IEnumerable <string> Convert(object?source)
        {
            _listBuilder.Begin(source, true);

            var temp = (from object value in _listBuilder.Objects select _baseConverter.Convert(value)).ToArray();

            _listBuilder.End();

            return(temp);
        }
        private void ProgressString(SerializerMode mode, ref string str, ref object?obj)
        {
            switch (mode)
            {
            case SerializerMode.Deserialize:
                obj = _converter?.ConvertBack(str);
                break;

            case SerializerMode.Serialize:
                str = _converter?.Convert(obj) ?? string.Empty;
                break;

            default:
                throw new ArgumentOutOfRangeException(nameof(mode));
            }
        }
Esempio n. 6
0
        public void NameTest()
        {
            var mapper = new SimpleMapper <UserDto, User>();

            mapper.AddMapping(c => c.FirstName, c => c.Name);
            mapper.AddMapping(c => c.FirstLogin, c => c.Login);
            mapper.AddMapping(c => c.RegisterDateOne, c => c.RegisterDate);
            mapper.AddMapping(c => c.CredentialsDto, c => c.Credentials);
            mapper.AddMapping(c => c.CredentialsDto.Password, c => c.Credentials.Password);
            mapper.AddMapping(c => c.CredentialsDto.Token, c => c.Credentials.Token);
            mapper.AddMapping(c => c.CredentialsDto.Token.CurrentTokenNumber, c => c.Credentials.Token.CurrentTokenNumber);
            mapper.AddMapping(c => c.ActivitiesDto, c => c.Activities);

            var converter = new SimpleConverter <UserDto, User>(mapper);

            Expression <Func <User, bool> > expression = user => user.IsActive == true;

            converter.Convert(expression);
        }
Esempio n. 7
0
 protected override void Serialize(object target, HeaderdFileContext context)
 {
     Argument.NotNull(context, nameof(context)).CurrentWriter.Content = _converter?.Convert(GetValue(target));
 }
Esempio n. 8
0
        protected override void Serialize(object target, HeaderdFileContext context)
        {
            var content = _converter?.Convert(GetValue(target));

            Argument.NotNull(context, nameof(context)).CurrentWriter.Add(_keyName, content ?? string.Empty);
        }
Esempio n. 9
0
        public void WordConvertTest()
        {
            var dataSource = new DataSource
            {
                { "QuotationNo", new DataItem {
                      Type = (int)RenderMode.Plain, Value = "QR140507000"
                  } },
            };

            var item = new DataItem {
                Type = (int)RenderMode.Plain, Value = "2014-05-07"
            };

            dataSource.Add("Date", item);
            item = new DataItem {
                Type = (int)RenderMode.Plain, Value = "7623"
            };
            dataSource.Add("CustomerCode", item);
            item = new DataItem {
                Type = (int)RenderMode.Plain, Value = string.Empty
            };
            dataSource.Add("VenderCode", item);
            item = new DataItem {
                Type = (int)RenderMode.Plain, Value = "Microsoft Corporation"
            };
            dataSource.Add("CustomerName", item);
            item = new DataItem {
                Type = (int)RenderMode.Plain, Value = "Jon Aswad"
            };
            dataSource.Add("To", item);
            item = new DataItem {
                Type = (int)RenderMode.Plain, Value = "张振龙[Zhenlong Zhang]"
            };
            dataSource.Add("From", item);
            item = new DataItem {
                Type = (int)RenderMode.Plain, Value = "One  Microsoft Way,ASHBURN,VA,20147"
            };
            dataSource.Add("ToAddress", item);
            dataSource.Add("FromAddress", DataItem.NewItem(RenderMode.Plain, "No.98-5,  Rd.19  Hangzhou  Eco.&  Tec.  Dev. Zone Hangzhou"));
            dataSource.Add("ToTel", DataItem.NewItem(RenderMode.Plain, "+1(802)8647358 "));
            dataSource.Add("FromTel", DataItem.NewItem(RenderMode.Plain, "+86-571-86714425-323"));
            dataSource.Add("ToFax", DataItem.NewItem(RenderMode.Plain, ""));
            dataSource.Add("FromFax", DataItem.NewItem(RenderMode.Plain, "+86-571-86714426-229"));
            var data   = new DataTable();
            var column = new DataColumn("No_0")
            {
                DataType = typeof(int)
            };

            data.Columns.Add(column);
            column = new DataColumn("Item_0")
            {
                DataType = typeof(string)
            };
            data.Columns.Add(column);
            column = new DataColumn("Desc_0")
            {
                DataType = typeof(string)
            };
            data.Columns.Add(column);
            column = new DataColumn("Qty_0")
            {
                DataType = typeof(double)
            };
            data.Columns.Add(column);
            column = new DataColumn("UP_0")
            {
                DataType = typeof(double)
            };
            data.Columns.Add(column);
            column = new DataColumn("CUR_0")
            {
                DataType = typeof(string)
            };
            data.Columns.Add(column);
            column = new DataColumn("AMT_0")
            {
                DataType = typeof(double)
            };
            data.Columns.Add(column);
            var    random = new Random();
            double sum    = 0.0;

            for (int i = 0; i < 32; i++)
            {
                double  value = random.NextDouble();
                DataRow row   = data.NewRow();
                row["No_0"]   = i + 1;
                row["Item_0"] = string.Format("APEA30{0}", i + 1);
                row["Desc_0"] = string.Format("SHIELD-EMI,FENCE,FRONTSIDE,1{0}", i + 1);
                row["Qty_0"]  = 1.0000;
                row["UP_0"]   = value;
                row["CUR_0"]  = "USD";
                row["AMT_0"]  = value;
                sum          += value;
                data.Rows.Add(row);
            }

            dataSource.Add("Quotation", DataItem.NewItem(RenderMode.List, data));
            dataSource.Add("Remark", DataItem.NewItem(RenderMode.Plain, @"* This quotation is set up based on current design on May-7-2014.                 
            * This quotation is flexible according to the change of design in the future.                 
            *   Exchange rate: 1 USD = 6.2 RMB. This quotation will be updated if currency fluctuates more than 2%."));
            dataSource.Add("PriceTerm", DataItem.NewItem(RenderMode.Plain, "DAP Suzhou"));
            dataSource.Add("Payment", DataItem.NewItem(RenderMode.Plain, "T/T 30 days"));
            dataSource.Add("LeadTime", DataItem.NewItem(RenderMode.Plain, ""));
            dataSource.Add("Amt_Sum", DataItem.NewItem(RenderMode.Plain, sum.ToString(CultureInfo.InvariantCulture)));
            dataSource.Add("Cur_Sum", DataItem.NewItem(RenderMode.Plain, "USD"));
            dataSource.Add("Origin", DataItem.NewItem(RenderMode.Plain, "P.R.Chinas"));
            dataSource.Add("Packing", DataItem.NewItem(RenderMode.Plain, "Standard bulk packing"));
            dataSource.Add("Beneficiary", DataItem.NewItem(RenderMode.Plain, "Hangzhou Amphenol Phoenix Telecom Parts Co., Ltd."));
            dataSource.Add("AccountNo", DataItem.NewItem(RenderMode.Plain, "3753 5834 2400"));
            dataSource.Add("Name", DataItem.NewItem(RenderMode.Plain, "Bank Of China Hangzhou Economical & Technological Development Area Sub-Branch"));
            dataSource.Add("BankAddress", DataItem.NewItem(RenderMode.Plain, "NO 3 Road Hangzhou Economic And Technological Development Zone Hangzhou China"));
            dataSource.Add("SwiftCode", DataItem.NewItem(RenderMode.Plain, "BKCHCNBJ910"));
            dataSource.Add("PM", DataItem.NewItem(RenderMode.Image, "D:\\Template\\zhenglong.zhang.png"));

            var serializer = new JsonSerializer();

            serializer.Converters.Add(new DataSourceJsonConverter());
            serializer.Converters.Add(new DataItemJsonConverter());
            JObject obj = JObject.FromObject(dataSource, serializer);
            string  s   = obj.ToString();


            var doc = new DocumentEntity
            {
                ID           = Guid.NewGuid(),
                TemplateName = "模板.docx",
                OutputType   = (int)(OutputType.PDF | OutputType.Word),
                DataSource   = s
            };

            // 测试文档转换
            var converter = new SimpleConverter();

            converter.Convert(doc);

            // 再生产环境可以调用如下语句直接加入数据库,然后增加文档转换服务自定转换
            //DocumentService.Instance.AddDocument(doc);
            //Enterprises.Framework.Plugin.Office.Converters.DocumentConvert service = new Enterprises.Framework.Plugin.Office.Converters.DocumentConvert();
            //service.Process();
        }
        protected override void Serialize(object target, IniContext context)
        {
            var value = GetValue(target);

            context.File = context.File.SetData(_section, _key, _converter?.Convert(value) ?? string.Empty);
        }
        protected override void Serialize(object target, IniContext context)
        {
            Argument.NotNull(context, nameof(context));

            var value = GetValue(target);

            context.File.GetSection(_section)?.GetOrAddListEntry(_key).Values.AddRange(_converter?.Convert(value));
        }