github:https://github.com/zzhi/DotNetWeb

这是一个基于asp.net core web application的练习项目,目的是学习dotnet core新技能。

1,目前实现了基于mysql简单的增删查改功能(Dapper)。https://github.com/StackExchange/dapper-dot-net

示例:

[HttpPost]
[ValidateAntiForgeryToken]
public IActionResult Edit(int id, [Bind("ID,Genre,Price,ReleaseDate,Title")] Movie movie)
{
if (id != movie.ID)
{
Log.Information("ID为空");
return NotFound();
} if (ModelState.IsValid)
{
try
{
MySqlConnection con = new MySqlConnection(Config.DbServer); string sql = "UPDATE `movie` SET `Title`='" + movie.Title + "', `ReleaseDate`='" + Convert.ToDateTime(movie.ReleaseDate).ToString("yyyy-MM-dd HH:mm:ss") + "', `Genre`='" + movie.Genre + "', `Price`='" + movie.Price + "' WHERE ID =" + id;
con.Execute(sql);
Log.Information("操作成功");
}
catch (Exception ex)
{
Log.Information(ex.Message);
throw new Exception(ex.Message);
}
return RedirectToAction("Index");
}
return View(movie);
}

  

2,添加了日志功能(Serilog) https://github.com/serilog/serilog;

  #region 日志
Log.Logger = new LoggerConfiguration()
.MinimumLevel.Debug()//等级
.WriteTo.LiterateConsole()//写到控制台
.WriteTo.RollingFile("logs\\{Date}.txt")//写到文本
.CreateLogger();
#endregion

3,添加了Redis: https://www.nuget.org/packages/ServiceStack.Redis.Core/

  [Fact]
public void SetGetTest()
{ var manager = new RedisManagerPool("localhost:6379");
using (var client = manager.GetClient())
{
client.Set("foo", "bar");
Console.WriteLine("Redis Test: foo={0}", client.Get<string>("foo"));
}
}

4,添加了xUnit.net :https://xunit.github.io/docs/getting-started-dotnet-core.html

  {
"version": "1.0.0-*",
"testRunner": "xunit",
"dependencies": {
"xunit": "2.2.0-beta2-build3300",
"Utility": "1.0.0-*",
"System.Text.Encoding.CodePages": "4.3.0",
"dotnet-test-xunit": "2.2.0-preview2-build1029"
},
"frameworks": {
"netcoreapp1.0": {
"dependencies": {
"Microsoft.NETCore.App": {
"type": "platform",
"version": "1.0.0"
}
}
}
}
}

asp.net core 实践的更多相关文章

  1. ASP.NET Core WebAPI 开发-新建WebAPI项目 转

    转 http://www.cnblogs.com/linezero/p/5497472.html ASP.NET Core WebAPI 开发-新建WebAPI项目   ASP.NET Core We ...

  2. ASP.NET Core 2 学习笔记(十二)REST-Like API

    Restful几乎已算是API设计的标准,通过HTTP Method区分新增(Create).查询(Read).修改(Update)和删除(Delete),简称CRUD四种数据存取方式,简约又直接的风 ...

  3. ASP.NET Core开发Docker部署

    ASP.NET Core开发Docker部署,.NET Core支持Docker 部署运行.我们将ASP.NET Core 部署在Docker 上运行. 大家可能都见识过Docker ,今天我们就详细 ...

  4. ASP.NET Core MVC TagHelper实践HighchartsNET快速图表控件-开源

    ASP.NET Core MVC TagHelper最佳实践HighchartsNET快速图表控件支持ASP.NET Core. 曾经在WebForms上写过 HighchartsNET快速图表控件- ...

  5. 基于Jenkins Pipeline的ASP.NET Core持续集成实践

    最近在公司实践持续集成,使用到了Jenkins的Pipeline来提高团队基于ASP.NET Core API服务的集成与部署效率,因此这里总结一下. 一.关于持续集成与Jenkins Pipelin ...

  6. ASP.NET CORE做的网站运行在docker实践

    用VS2017 建立了 DotNet Core 2.2 的网站后,如何转移到 Docker 下运行? 下面分两种方式来实践: 1.直接手动命今行,将本机目录映射进Docker,运行网站.2.制作 Im ...

  7. ASP.NET Core Docker jexus nginx部署-CentOS实践版

    本文用图文的方式记录了我自己搭建centos+asp.net core + docker + jexus + nginx的整个过程,希望对有同样需求的朋友有一定的参考作用. 本文主要内容如下: cen ...

  8. ASP.NET Core OceLot 微服务实践

    1.OceLot中间件介绍 在传统的BS应用中,随着业务需求的快速发展变化,需求不断增长,迫切需要一种更加快速高效的软件交付方式.微服务可以弥补单体应用不足,是一种更加快速高效软件架构风格.单体应用被 ...

  9. 使用Asp.Net Core MVC 开发项目实践[第一篇:项目结构说明]

    先从下图看整体项目结构: Mango.Manager: 为后台管理项目 Mango.Web: 为前台项目 Mango.Framework.Core: 为常用的基础操作类项目 Mango.Framewo ...

随机推荐

  1. 1104 文法产生这段C程序的推导过程

  2. 第七次JAVA语言笔记

  3. ant build.xml 解释!

    Ant的概念  Make命令是一个项目管理工具,而Ant所实现功能与此类似.像make,gnumake和nmake这些编译工具都有一定的缺陷,但是Ant却克服了这些工具的缺陷.最初Ant开发者在开发跨 ...

  4. (转)elasticsearch5.2.2 压测配置

    1.elasticsearch.yml # ---------------------------------- Cluster ----------------------------------- ...

  5. Delphi通过ADO链接数据库及对数据库的增加,删除,修改,读取操作实例教程4

    ADO是一种程序对象,用于表示用户数据库中的数据结构和所包含的数据.ADO(ActiveXDataObjects,ActiveX数据对象)是Microsoft提出的应用程序接口(API)用以实现访问关 ...

  6. 以太网帧,IP,TCP,UDP首部结构

    1.以太网帧的格式 以太网封装格式 2.IP报头格式 IP是TCP/IP协议簇中最为重要的协议.所有的TCP,UDP, ICMP和IGMP数据都以IP数据报格式传输.IP提供的是不可靠.无连接的协议. ...

  7. Vue2.0 - 全局操作 Vue.set

    引:http://www.cnblogs.com/zccblog/p/7192420.html Vue.set 的作用就是在构造器外部操作构造器内部的数据.属性或者方法.比如在vue构造器内部定义了一 ...

  8. 【Python】Python的time和datetime模块

    time 常用的有time.time()和time.sleep()函数. import time print(time.time()) 1499305554.3239055 上面的浮点数称为UNIX纪 ...

  9. MethodHandle

    JDK7为间接调用方法引入新的API,在java.lang.invoke包下,可以看作为反射的升级版,但它不像反射API那样显得冗长.繁重 主要的类 MethodHandle 方法句柄.对可直接执行的 ...

  10. 51nod 1532 带可选字符的多字符串匹配(位运算)

    题意: 有一个文本串,它的长度为m (1 <= m <= 2000000),现在想找出其中所有的符合特定模式的子串位置.符合特定模式是指,该子串的长度为n (1 <= n <= ...