项目收集-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的主要目的是提供一个序列协议,这个协议即使是在端点间传输的复杂的 ...
随机推荐
- poj 3522 Kruskal
题意:求图的一个生成树使其最大边权与最小边权的差值最小,求其最小值 思路:利用贪心思想,先对边进行排序,然后从最小边开始枚举,每次进行kruskal向右加入边,若加入边刚好能遍历所有点,记录最后加入的 ...
- 个人作业-2 必应词典安卓APP分析
产品: 必应词典 安卓版 第一部分:调研,评测 1.对于这款app的第一印象就是界面不是很美观,页面排版十分混乱,有些功能比较鸡肋,功能也不是很丰富,不过这款app的ui设计相对简洁,让人容易上手,对 ...
- 第二次项目冲刺(Beta阶段)5.21
1.提供当天站立式会议照片一张 会议内容: ①检查前一天的任务情况,做出自我反省. ②制定新一轮的任务计划. 2.每个人的工作 (1)工作安排 队员 今日进展 明日安排 王婧 #53实现多对多查重 # ...
- 201521123093 java 第七周学习总结
1. 本周学习总结 2. 书面作业 1.ArrayList代码分析 1.1 解释ArrayList的contains源代码 //contains()方法 public boolean contains ...
- 201521123029《Java程序设计》第三周学习总结
1.本周学习总结 2.书面作业 Q1.代码阅读 public class Test1 { private int i = 1;//这行不能修改 private static int j = 2; pu ...
- 201521145048《Java程序设计》第13周学习总结
1. 本周学习总结 以你喜欢的方式(思维导图.OneNote或其他)归纳总结多网络相关内容. 2. 书面作业 Q1. 网络基础 1.1 比较ping www.baidu.com与ping cec.jm ...
- Eclipse rap 富客户端开发总结(9) : rap上传与下载
一 上传 上传即将文件上传到服务器上,在客户端需要写相应的脚本,服务器端需要注册相应的 handle 接受客户端的请求. 原理: Rap 的上传和下载是通过普通的 web 的方式进行上传和下载的 , ...
- 命令导入导出oracle库
目前还是新手:所以记录下来最笨的方式,留用 一.从服务器先把库导出来 exp sys/mima@orcl file = "d:\pybghs.dmp" full=y 二.从服 ...
- java基础知识6-- 抽象类,抽象方法,接口,构造方法,类方法等易混淆的知识点
一.抽象类和抽象方法 (B 继承 抽象类A) 抽象类:有抽象方法的一定是抽象类 抽象方法:方法名前有abstract修饰,且方法没有方法体,即{},不需要实现任何功能,只是声明 1.抽象类中的方法有 ...
- 初学者---AngularJS详解
AngularJS 简介 AngularJs是一个用于设计动态web应用的结构框架.首先,它是一个框架,不是类库,提供一整套方案用于设计web应用.它不仅仅是一个javascript框架,因为它的核心 ...