使用ServiceStack改造我们的项目

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介: ServiceStack是一个NET环境下的开源框架集合 包括轻量级的Orm框架,数据库访问,Json处理,Redis驱动等多个模块,我们可以按需选择使用 serviceStack.Ormlite   serviceStack.Ormlite是一个.NET平台快速实现ORM的数据访问框架,支持多种主流的数据库。

ServiceStack是一个NET环境下的开源框架集合

包括轻量级的Orm框架,数据库访问,Json处理,Redis驱动等多个模块,我们可以按需选择使用

serviceStack.Ormlite 

 serviceStack.Ormlite是一个.NET平台快速实现ORM的数据访问框架,支持多种主流的数据库。框架本省暴露一些编程接口用于数据库访问,开发者甚至不用写完整的Sql语句,可以借助 Sql Expression 构建sql语句

就可以实现数据库字段与实体类的映射。以下的操作都基于 数据库访问对象

IDbConnection dbcon

 插入数据:

using (IDbConnection db = dbFactory.OpenDbConnection()) {
    db.CreateTable<Employee>();
    db.Insert(new Employee { Id = 1, Name = "Employee 1" });
}

查询操作:

1 自定义sql

 string cmdText = "SELECT * FROM  City WHERE " + 字段名字 + "=" + 参数化字段; 
return dbcon.Select<City>(cmdText, new { ProvinceCode = 参数值}

2 直接返回实体 

   return dbcon.Select<City>()

Sql Expression 构建sql语句

 dbcon.Select(dbCmd.SqlExpression<Province>().Where(q => q.Code == "100010"));
更多Api

更新操作

dbcon.Update(new Person { Id = 1, FirstName = "Jimi", LastName = "Hendrix", Age = 27});
dbcon.UpdateOnly(new Person { FirstName = "JJ" }, p => p.FirstName);

 版本管理

 我们使用命令行来处理版本依赖安装卸载等问题

 卸载版本 

Uninstall-Package ServiceStack -Force

 

参考资料

ServiceStack.Ormlite github地址

http://mono.servicestack.net/docs/ormlite/ormlite-overview

http://www.curlette.com/?cat=26

 http://www.strathweb.com/2013/03/signalr-filters-and-servicestack/

ServiceStack V3 维基百科 

https://github.com/ServiceStackV3/ServiceStackV3/wiki

https://github.com/ServiceStackV3/ServiceStackV3/wiki/Create-your-first-webservice

https://github.com/ServiceStackV3/ServiceStackV3

 

Freelance   自由职业者

 MySql与Sqlserver主要区别

 mysql的每句结束要用";"

1 获得当前日期函数:curdate(),current_date()

2 获得当前时间函数:curtime();

3 获得当前日期+时间:now();

 LinuxMysql数据库表名是区分大小写的,可以通过配置来调整

 

MySQL中没有top关键字,需要用limit代替且放在后面

 在ServiceStack中可以通过类属性的 [Alias("tablename")]来指定,这样可以保留C#本身的类命名规则,同时不影响数据库访问

http://www.cnblogs.com/chu888chu888/archive/2012/01/12/2320207.html

 遵循冷热数据分开: 
建表时,遵循更新频率不同的数据分开。频繁更新的字段应该和不怎么频繁更新的字段分开。这样有利于在流量大时,进行分开控制。更新不频繁的字段可以最限度地使用缓存。 

避免使用Null字段,

自增列或全局主键做InnoDb主键

Count(*) 资源消耗大

MYsql库表对大小写敏感

字段名字的大小写不敏感

营销始于对消费者需求的研究,同时还包括如何满足需求。选择和确定某些需求即意味着放弃其他需求。

定位是指我们给顾客留下什么样的印象。我们在告诉顾客:我与众不同,因为我们具备这些特色,如果你认为这些特色是重要的,是你所喜欢的,那么我的产品就是你最好的选择。

传统营销包括市场细分和定位

 

 NuGet包发现和管理工具 NuGet Package Explorer http://nuget.codeplex.com/releases/view/59864

 

相关实践学习
如何在云端创建MySQL数据库
开始实验后,系统会自动创建一台自建MySQL的 源数据库 ECS 实例和一台 目标数据库 RDS。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
2月前
|
缓存 监控 Java
造轮子能力大提升:基于SpringBoot打造高性能缓存组件
在快节奏的软件开发领域,"不重复造轮子" 常常被视为提高效率的金科玉律。然而,在某些特定场景下,定制化的高性能缓存组件却是提升系统性能、优化用户体验的关键。今天,我们将深入探讨如何利用SpringBoot框架,从零开始打造一款符合项目需求的高性能缓存组件,分享我在这一过程中的技术心得与学习体会。
70 6
|
6月前
|
监控 负载均衡 Dubbo
Dubbo 模块探秘:深入了解每个组件的独特功能【二】
Dubbo 模块探秘:深入了解每个组件的独特功能【二】
115 0
|
Java Maven
分布式项目搭建
分布式项目搭建
115 0
|
缓存 JSON NoSQL
低版本SpringBoot Redis缓存旁路设计改造方案实践
低版本SpringBoot Redis缓存旁路设计改造方案实践
360 0
|
缓存 开发框架 NoSQL
SpringCloud微服务实战——搭建企业级开发框架(二十):集成Reids缓存
这章我们来介绍在系统中引入redisson-spring-boot-starter依赖来实现redis缓存管理 1、在GitEgg-Platform中新建gitegg-platform-redis用于管理工程中用到的Redis公共及通用方法。
470 57
SpringCloud微服务实战——搭建企业级开发框架(二十):集成Reids缓存
|
测试技术 Python
【第五篇-完结篇】XiaoZaiMultiAutoAiDevices之改造扩展
在前面系列文章中有讲到,使用configparser,ini格式的文件作为配置文件,在新增或者删除其中的值时,会丢失所有注释,所以在框架源码注释中我有写到,如果对这方面比较介意或者是有需求的话,可以进行更改配置文件。
130 0
|
存储 缓存 NoSQL
微服务项目:尚融宝(18)(后端搭建:引进redis)
由于数据字典的变化不是很频繁,而且系统对数据字典的访问较频繁,所以我们有必要把数据字典的数据存入缓存,减少数据库压力和提高访问速度。这里,我们使用Redis作为系统的分布式缓存中间件。
微服务项目:尚融宝(18)(后端搭建:引进redis)
|
缓存 领域建模 数据库
cloud Alibaba电商后台组件实战:架构演进,了解领域驱动设计,项目公共模块编写(1)
cloud Alibaba电商后台组件实战:架构演进,了解领域驱动设计,项目公共模块编写(1)
cloud Alibaba电商后台组件实战:架构演进,了解领域驱动设计,项目公共模块编写(1)
|
负载均衡
SpringCloud升级之路2020.0.x版-39. 改造 resilience4j 粘合 WebClient
SpringCloud升级之路2020.0.x版-39. 改造 resilience4j 粘合 WebClient
SpringCloud升级之路2020.0.x版-39. 改造 resilience4j 粘合 WebClient
|
负载均衡 微服务
SpringCloud升级之路2020.0.x版-37. 实现异步的客户端封装配置管理的意义与设计
SpringCloud升级之路2020.0.x版-37. 实现异步的客户端封装配置管理的意义与设计
SpringCloud升级之路2020.0.x版-37. 实现异步的客户端封装配置管理的意义与设计
下一篇
无影云桌面