项目收集-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的主要目的是提供一个序列协议,这个协议即使是在端点间传输的复杂的 ...
随机推荐
- mha 复制检查报错“There is no alive server. We can't do failover”
安装mha所参考的文章: http://linzhijian.blog.51cto.com/1047212/1906434 http://www.cnblogs.com/xiaoboluo768/p/ ...
- 性能测试中vmstat命令的常见使用。
vmstat是Linux中常用的一个命令,尤其是在进行性能测试时,使用该命令,往往能辅助我们进行性能问题定位. 我们先看一下这个命令执行得到的数据. [root@xxx ~]# vmstat 1 10 ...
- 算法学习:Pac-Man的简单对抗
Pacman项目是加州大学伯克利分校提供的一个可视化的AI学习平台.其主体利用python完成.该项目提供了丰富的说明文档,以及预先实现了一些简单的算法供参考各接口的使用. http://ai.ber ...
- ELM极限学习机
极限学习机(Extreme Learning Machine) ELM,是由黄广斌提出来的求解神经网络算法.ELM最大的特点是对于传统的神经网络,尤其是单隐层前馈神经网络(SLFNs),ELM比传统的 ...
- 换个角度审视NAT技术
NAT (Network address translation,网络地址转换 )是局域网连接到互联网的一个对接工作. 首先要知道NAT是一个技术或者说软件而不是协议 后面你会知道NAT 是偏应用层但 ...
- 201521123086 《Java程序设计》第8周学习总结
本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结集合与泛型相关内容. 书面作业 1.List中指定元素的删除 题集jmu-Java-05-集合之4-1 1.1 实验总结 Answer: ...
- 201521123060 《Java程序设计》第8周学习总结
1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结集合与泛型相关内容. 1.2 选做:收集你认为有用的代码片段 2. 书面作业 本次作业题集集合 List中指定元素的删除(题目4-1 ...
- 201521123017 《Java程序设计》第9周学习总结
1. 本周学习总结 2. 书面作业 Q1.常用异常 题目5-1 1.1 截图你的提交结果(出现学号) 1.2 自己以前编写的代码中经常出现什么异常.需要捕获吗(为什么)?应如何避免? 1.3 什么样的 ...
- 201521123096《Java程序设计》第九周学习总结
1. 本周学习总结 1.1 以你喜欢的方式(思维导图或其他)归纳总结异常相关内容. 2. 书面作业 本次PTA作业题集异常 1.常用异常 题目5-1 1.1 截图你的提交结果(出现学号) 1.2 自己 ...
- Smrty模版总结(转)
转自:http://www.cppblog.com/amazon/archive/2011/11/21/160638.html 前提:1. 部署smarty模板目录:2. 编写Smarty类的子类,定 ...