项目收集-AutoMapper使用,事务,Json.Net序列化反序列化,代码生成调用等
using System;
using AutoMapper;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq; namespace ConsoleApplication1
{
class Program
{ private const string ConnStr = "Data Source=192.168.1.88;User Id=sa;Password=1234567890;Database=dbtest;Pooling=true;Max Pool Size=600;Min Pool Size=0;";
static void Main(string[] args)
{
//automapper
productDto dto = new productDto();
dto.proId = 1000;
dto.proName = "2016款最新秋季男式外套"; //AddressDto到Address的映射,AddressDto的字段CountryName要对应Address的字段Country:
//Mapper.CreateMap<AddressDto, Address>().ForMember(d => d.Country, opt => opt.MapFrom(s => s.CountryName)); Mapper.Initialize(x => x.CreateMap<productDto, product>());
var model = Mapper.Map<product>(dto);
Console.WriteLine(string.Format("{0}-{1}-{2}-{3}-{4}", model.proId, model.Price, model.shortInfo, model.info, model.addDate));
Console.ReadKey(); JObject obj = new JObject();
obj.Add("proId", "20000");
obj.Add("proName", "品牌电脑");
obj.Add("Price", "3600.00");
//转换成json字符串
string json = JsonConvert.SerializeObject(obj);
Console.WriteLine(json);
Console.ReadKey();
//json字符串转换成对象 方式1
var jsonObj = JObject.Parse(json); //JsonConvert.DeserializeObject(json);
Console.WriteLine(string.Format("{0}-{1}-{2}", jsonObj["proId"], jsonObj["proName"], jsonObj["Price"]));
Console.ReadKey();
//json字符串转换成对象 方式2
var jsonModel = JsonConvert.DeserializeObject(json);
Console.WriteLine(string.Format("{0}-{1}-{2}", jsonObj["proId"], jsonObj["proName"], jsonObj["Price"]));
Console.ReadKey();
//json字符串转换成对象 方式3
var proDto = JsonConvert.DeserializeObject<productDto>(json);
Console.WriteLine(string.Format("{0}-{1}-{2}", proDto.proId, proDto.proName, proDto.Price));
Console.ReadKey();
/*
Maticsoft.DBUtility.DbHelperSQL.connectionString = ConnStr; GetAllData();
Console.ReadKey(); AddData();
Console.ReadKey();
GetAllData();
Console.ReadKey(); UpdateData();
Console.ReadKey();
GetAllData();
Console.ReadKey(); GetQueryData();
Console.ReadKey(); DeleteData();
Console.ReadKey(); GetQueryData();
Console.ReadKey(); DeleteData2();
Console.ReadKey(); GetQueryData();
Console.ReadKey(); //事务处理
using (TransactionScope scope = new TransactionScope())
{
scope.Complete();
}
*/
} private static void GetAllData()
{
Console.WriteLine("===============全部数据=================");
//获取全部数据
foreach (var item in Dec.BLL.GatherData.GetAllGatherDatas())
{
Console.WriteLine(string.Format("{0}-{1}-{2}-{3}-{4}-{5}-{6}", item.Url, item.SkuCode, item.Domain,
item.Lang, item.Currency, item.ProName, item.ProGroup));
}
} private static void GetQueryData()
{
Console.WriteLine("===============查询数据=================");
//获取全部数据(搜索条件)
Dec.Models.GatherData queryModel = new Dec.Models.GatherData();
queryModel.Url = "22";
queryModel.Domain = "44";
foreach (var item in Dec.BLL.GatherData.GetAllGatherDatasByQuery(queryModel))
{
Console.WriteLine(string.Format("{0}-{1}-{2}-{3}-{4}-{5}-{6}", item.Url, item.SkuCode, item.Domain,
item.Lang, item.Currency, item.ProName, item.ProGroup));
}
} private static void AddData()
{
Console.WriteLine("===============新增数据=================");
//新增数据
Dec.Models.GatherData addModel = new Dec.Models.GatherData();
addModel.Url = "22";
addModel.SkuCode = "33";
addModel.Domain = "44"; addModel.Lang = "55";
addModel.Currency = "66";
addModel.ProName = "77";
addModel.ProGroup = "88";
int i = Dec.BLL.GatherData.Add(addModel);
if (i > 0)
{
Console.WriteLine("插入成功");
}
else
{
Console.WriteLine("插入失败");
}
} private static void UpdateData()
{
Console.WriteLine("===============更新数据=================");
//更新数据
Dec.Models.GatherData updateModel = new Dec.Models.GatherData();
updateModel.Id = 10000;
updateModel.Url = "2222";
updateModel.SkuCode = "3333";
updateModel.Domain = "4444"; updateModel.Lang = "5555";
updateModel.Currency = "6666";
updateModel.ProName = "7777";
updateModel.ProGroup = "8888";
bool flag = Dec.BLL.GatherData.Update(updateModel);
if (flag)
{
Console.WriteLine("更新成功");
}
else
{
Console.WriteLine("更新失败");
}
} private static void DeleteData()
{
Console.WriteLine("===============删除数据=================");
bool flag = Dec.BLL.GatherData.Delete(10000);
if (flag)
{
Console.WriteLine("删除成功");
}
else
{
Console.WriteLine("删除失败");
}
} private static void DeleteData2()
{
Console.WriteLine("===============删除数据=================");
//更新数据
Dec.Models.GatherData updateModel = new Dec.Models.GatherData();
updateModel.Url = "22";
updateModel.SkuCode = "33";
bool flag = Dec.BLL.GatherData.Delete(updateModel);
if (flag)
{
Console.WriteLine("删除成功");
}
else
{
Console.WriteLine("删除失败");
}
}
} public class productDto
{
public int proId { set; get; }
public string proName { set; get; }
public double Price { set; get; }
} public class product
{
public int proId { set; get; }
public string proName { set; get; }
public double Price { set; get; }
public string shortInfo { set; get; }
public string info { set; get; }
public DateTime addDate { set; get; }
}
}

项目收集-AutoMapper使用,事务,Json.Net序列化反序列化,代码生成调用等的更多相关文章
- 二进制数据的序列化反序列化和Json的序列化反序列化的重要区别
前言:最近一个一个很奇怪的问题,很明白的说,就是没看懂,参照下面的代码: /// <summary> /// 反序列化对象 /// </summary> /// <typ ...
- .NET Core protobuf-net、MessagePack、Json.NET序列化/反序列化性能测试
测试代码Zonciu/SerializationTest.cs, 源自neuecc/ZeroFormatterBenchmark.cs. NuGet包及其版本 mgravell/protobuf-ne ...
- 05-06 Flutter JSON和序列化反序列化、创建模型类转换Json数据、轮播图数据渲染:Flutter创建商品数据模型 、请求Api接口渲染热门商品 推荐商品
Config.dart class Config{ static String domain='http://jd.itying.com/'; } FocusModel.dart class Focu ...
- Newtonsoft.Json.Linq 序列化 反序列化等知识
1.反序列化实体类 //使用JObject读写字符串:JObject j = JObject.Parse(data);IEnumerable<JProperty> properties = ...
- php json与xml序列化/反序列化
在web开发中对象的序列化与反序列化经常使用,比较主流的有json格式与xml格式的序列化与反序列化,今天想写个jsop的小demo,结果发现不会使用php序列化,查了一下资料,做个笔记 简单数组js ...
- Asp.Net MVC大型项目实践整合 NHibernate与Json序列化
通过NHibernate我们多表查询是实现了 但由于查询出来的集合中的对象“不是平的”,如何在送到UI绑定成了问题.ExtJs UI组件的数据绑定支持多种格式,如简单数组,Json,Xml.在本项目中 ...
- ios项目里扒出来的json文件
p.p1 { margin: 0.0px 0.0px 0.0px 0.0px; font: 13.0px Menlo; color: #000000 } p.p2 { margin: 0.0px 0. ...
- github上一些觉得对自己工作有用的项目收集
usefullProjectCollect github上一些觉得对自己工作有用的项目收集 技能类 markdown语法中文说明 全文检索 elasticsearch bigdesk elastics ...
- 超越 JSON: Spearal 序列化协议简介
Spearal 是一个新的开源的序列化协议,这个协议旨在初步替换JSON 将HTML和移动应用连接到Java的后端. Spearal的主要目的是提供一个序列协议,这个协议即使是在端点间传输的复杂的 ...
随机推荐
- 第4阶段——制作根文件系统之分析init进程(2)
本节目标: (1) 了解busybox(init进程和命令都放在busybox中) (2) 创建SI工程,分析busybox源码来知道init进程做了哪些事情 (3) 分析busybox中init进 ...
- 【小白成长撸】--链栈(C语言版)
// 链栈.cpp : 定义控制台应用程序的入口点. // #include "stdafx.h" #include <stdio.h> #include <st ...
- IOS学习[Swift中跳转与传值]
Swift中页面跳转与传值: 1.简单方式 首先,Swift的跳转可分为利用xib文件跳转与storyboard跳转两种方法,我这里选择使用storyboard的界面跳转方法. 1.通过在storyb ...
- Nhibernate学习教程(1)-- 开篇有益
NHibernate之旅(1):开篇有益 本节内容 NHibernate是什么 NHibernate的架构 NHibernate资源 欢迎加入NHibernate中文社区 作者注:2009-11-06 ...
- Color.js增强你对颜色的控制
往逝之因 不要低头,皇冠会掉... 可你又没有皇冠 Color.js 增强你对颜色的控制 阅读目录 轻松管理颜色--color.js库 使用color.js Accessor Methods 你该知 ...
- 【1414软工助教】团队作业3——需求改进&系统设计 得分榜
题目 团队作业3--需求改进&系统设计 作业提交情况情况 本次作业所有团队都按时提交作业. 往期成绩 个人作业1:四则运算控制台 结对项目1:GUI 个人作业2:案例分析 结对项目2:单元测试 ...
- 团队作业8----第二次项目冲刺(beta阶段)5.25
Day7-05.25 1.每日会议 会议内容: 1.今日对整个项目进行了一个总结. 2.讨论了这次项目中的不足和每个人的贡献. 讨论照片:拍摄者 周迪 2.任务分配情况: 每个人的工作分配表: 队员 ...
- 201521123075 《Java程序设计》第8周学习总结
1. 本周学习总结 2. 书面作业 本次作业题集集合 1.List中指定元素的删除(题目4-1) 1.1 实验总结 进行删除操作的时候最好从末尾开始删除.如果从开头开始删除,会使每个元素的对应位置发生 ...
- 201521123108 《Java程序设计》第5周学习总结
1. 本章学习总结 2. 书面作业 Q1. 代码阅读:Child压缩包内源代码 1.1 com.parent包中Child.java文件能否编译通过?哪句会出现错误?试改正该错误.并分析输出结果. 答 ...
- 201521123044 《Java程序设计》第3周学习总结
1. 本章学习总结 2. 书面作业 1. 代码阅读 public class Test1 { private int i = 1;//这行不能修改 private static int j = 2; ...