使用ServiceStack改造我们的项目

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
云数据库 RDS PostgreSQL,集群系列 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(cmdText, new { ProvinceCode = 参数值}

2 直接返回实体

   return dbcon.Select()

Sql Expression 构建sql语句

 dbcon.Select(dbCmd.SqlExpression().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://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

 

相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
4月前
|
缓存 监控 Java
造轮子能力大提升:基于SpringBoot打造高性能缓存组件
在快节奏的软件开发领域,"不重复造轮子" 常常被视为提高效率的金科玉律。然而,在某些特定场景下,定制化的高性能缓存组件却是提升系统性能、优化用户体验的关键。今天,我们将深入探讨如何利用SpringBoot框架,从零开始打造一款符合项目需求的高性能缓存组件,分享我在这一过程中的技术心得与学习体会。
78 6
|
搜索推荐 Java 数据库
从0到1 手把手搭建spring cloud alibaba 微服务大型应用框架(八)saas平台篇-解决不同租户针定制化开发问题(3) -oauth2 登陆源码分析以及扩展添加tenantId属性
从0到1 手把手搭建spring cloud alibaba 微服务大型应用框架(八)saas平台篇-解决不同租户针定制化开发问题(3) -oauth2 登陆源码分析以及扩展添加tenantId属性
从0到1 手把手搭建spring cloud alibaba 微服务大型应用框架(八)saas平台篇-解决不同租户针定制化开发问题(3) -oauth2 登陆源码分析以及扩展添加tenantId属性
|
存储 缓存 中间件
谈谈中间件开发,给想从事中间件开发的同学
本文主要是写给那些想从事中间件开发的同学看的 :) 如果你没有这个打算,那么本文的学习路线非但不实用,还可能会影响你正常的工作 :) 什么是中间件开发?
1032 13
|
搜索推荐 前端开发 Java
从0到1 手把手搭建spring cloud alibaba 微服务大型应用框架(八)saas平台篇-解决不同租户针定制化开发问题(2) -挂载自定义登陆以及业务端完整代码
从0到1 手把手搭建spring cloud alibaba 微服务大型应用框架(八)saas平台篇-解决不同租户针定制化开发问题(2) -挂载自定义登陆以及业务端完整代码
从0到1 手把手搭建spring cloud alibaba 微服务大型应用框架(八)saas平台篇-解决不同租户针定制化开发问题(2) -挂载自定义登陆以及业务端完整代码
|
Java 微服务 Spring
从0到1 手把手搭建spring cloud alibaba 微服务大型应用框架(八) saas平台篇-解决不同租户针定制化开发问题 -完整代码以及案例方案(1)
从0到1 手把手搭建spring cloud alibaba 微服务大型应用框架(八) saas平台篇-解决不同租户针定制化开发问题 -完整代码以及案例方案(1)
从0到1 手把手搭建spring cloud alibaba 微服务大型应用框架(八) saas平台篇-解决不同租户针定制化开发问题 -完整代码以及案例方案(1)
|
消息中间件 Cloud Native Java
【深入浅出SpringCloud原理及实战】「SpringCloud-Alibaba系列」微服务模式搭建系统基础架构实战指南及版本规划踩坑分析
【深入浅出SpringCloud原理及实战】「SpringCloud-Alibaba系列」微服务模式搭建系统基础架构实战指南及版本规划踩坑分析
724 1
【深入浅出SpringCloud原理及实战】「SpringCloud-Alibaba系列」微服务模式搭建系统基础架构实战指南及版本规划踩坑分析
|
缓存 开发框架 NoSQL
SpringCloud微服务实战——搭建企业级开发框架(二十):集成Reids缓存
这章我们来介绍在系统中引入redisson-spring-boot-starter依赖来实现redis缓存管理 1、在GitEgg-Platform中新建gitegg-platform-redis用于管理工程中用到的Redis公共及通用方法。
481 57
SpringCloud微服务实战——搭建企业级开发框架(二十):集成Reids缓存
|
SQL 开发框架 前端开发
SpringCloud微服务实战——搭建企业级开发框架(三十二):代码生成器使用配置说明
一、新建数据源配置   因考虑到多数据源问题,代码生成器作为一个通用的模块,后续可能会为其他工程生成代码,所以,这里不直接读取系统工程配置的数据源,而是让用户自己维护。
348 55
SpringCloud微服务实战——搭建企业级开发框架(三十二):代码生成器使用配置说明
|
XML 存储 缓存
从MessageSource源码出发实战spring·i18n国际化的三种改造方案
从源码去看MessageSource的几个实现类的源码出发,基于spring的国际化支持,实现国际化的开箱即用,静态文件配置刷新生效以及全局异常国际化处理。
738 0
从MessageSource源码出发实战spring·i18n国际化的三种改造方案
|
SQL 开发框架 前端开发
SpringCloud微服务实战——搭建企业级开发框架(二十二):基于MybatisPlus插件TenantLineInnerInterceptor实现多租户功能
多租户技术的基本概念:   多租户技术(英语:multi-tenancy technology)或称多重租赁技术,是一种软件架构技术,它是在探讨与实现如何于多用户的环境下共用相同的系统或程序组件,并且仍可确保各用户间数据的隔离性。   在云计算的加持之下,多租户技术被广为运用于开发云各式服务,不论是IaaS,PaaS还是SaaS,都可以看到多租户技术的影子。
961 54

热门文章

最新文章