欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

使用ServiceStack改造我们的项目

程序员文章站 2022-03-25 22:50:02
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
使用ServiceStack改造我们的项目

更新操作

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