VNext使用记录

Posted by hqpsoft on December 7, 2015

一:EF7

数据迁移命令

先执行dnx ef migrations add Describe 然后再执行dnx ef database update.Describe会生成yyyy-MM-dd_Describe的类,方便管理每次迁移记录

EF上下文注册:在Startup启动类的ConfigureServices方法中添加如下:

services.AddEntityFramework()
                .AddSqlServer()
                .AddDbContext<VNextContext>(options => options.UseSqlServer(connection));

然后可以通过构造函数注入方式使用 e.g.

public class HomeController : Controller
    {
        private VNextContext _context;
        public HomeController(VNextContext context)
        {
            _context = context;
        }
    }

依赖注入:在Startup启动类的ConfigureServices方法中直接注入 services.AddTransient<IUserSvc, UserSvc>();

默认有4种生命周期类型:

Instance 任何时间都只能使用特定的实例对象,开发人员需要负责该对象的初始化工作。
Transient 每次都重新创建一个实例。
Singleton 创建一个单例,以后每次调用的时候都返回该单例对象。
Scoped 在当前作用域内,不管调用多少次,都是一个实例,换了作用域就会再次创建实例,类似于特定作用内的单例。

EF分页问题

目前EF7分页函数Skip()Take默认用的sql server12新增的分页函数的offset,如果数据库版本是12以下的,
可以使用options.UseSqlServer(Connection).UseRowNumberForPaging(),但是实际没效果,原因不明.Mrak下

V.Net5在IIS下发布

详见官方教程,需要安装** HTTP Platform Handler**

目前发现还不知道如何进行分层,Mark


Creative Commons License
This work is licensed under a CC A-S 4.0 International License.