ServiceStack.OrmLite 入门

Posted xxfcz

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ServiceStack.OrmLite 入门相关的知识,希望对你有一定的参考价值。

软件环境:

  • Win7 x64 SP1
  • SQL Server 2008r2
  • Visual Studio 2017 Professional

目标:取出示例数据库 ReportServer 的表 Roles 中的所有记录并显示。

步骤:

一、添加软件包

使用NuGet添加以下软件包:

ServiceStack

ServiceStack.OrmLite

 

二、定义表类

根据表Roles来定义对应的C#类:

    [Serializable]
    [Alias("Roles")]
    public class Role
    {
        public string RoleID { get; set; }
        public string RoleName { get; set; }
        public string Description { get; set; }
        public string TaskMask { get; set; }
        public int RoleFlags { get; set; }
    }

 

三、获取表数据并输出

            var dbFactory = new OrmLiteConnectionFactory("Server=(local);Database=ReportServer;Trusted_Connection=True;", SqlServerDialect.Provider);
            using(var db = dbFactory.Open())
            {
                var roles = db.Select<Role>();
                "Roles: {0}".Print(roles.Dump());
            }

 

完整的代码如下:

// RolesDemo.cs

using
System; using ServiceStack.Text; // for string.Print() using ServiceStack.OrmLite; using ServiceStack.DataAnnotations; // for [Alias()] namespace ConsoleApp1 { [Serializable] [Alias("Roles")] public class Role { public string RoleID { get; set; } public string RoleName { get; set; } public string Description { get; set; } public string TaskMask { get; set; } public int RoleFlags { get; set; } } class RolesDemo { public static void Run() { var dbFactory = new OrmLiteConnectionFactory("Server=(local);Database=ReportServer;Trusted_Connection=True;", SqlServerDialect.Provider); using(var db = dbFactory.Open()) { var roles = db.Select<Role>(); "Roles: {0}".Print(roles.Dump()); } } } }

 


// Program.cs
using System;

namespace ConsoleApp1
{
    class Program
    {
        static void Main(string[] args)
        {
            RolesDemo.Run();
        }
    }
}

 

以上是关于ServiceStack.OrmLite 入门的主要内容,如果未能解决你的问题,请参考以下文章

ServiceStack.OrmLite:索引的自定义命名可以在代码中完成吗?

有人对 ServiceStack Ormlite 中的 postgres jsonb 有问题吗?

使用 ServiceStack.ORMLite 的存储库模式中的事务

如何修改 ServiceStack.OrmLite 生成的 SQL?

ServiceStack OrmLite 连接Sqlserver数据库

在运行时在 ServiceStack.OrmLite 中获取类的表名/避免硬编码表名