葡京赌场网址Node.js与Sails~项目组织以及Mvc实现

趁 Entity Framework 最新主版本 EF6 的生产,Microsoft 对象关系映射
(ORM) 工具及了新的正统高度,与久负盛名的 .NET ORM
工具相比就不复是外行。 EF 已经全成熟,正在过以前大面积采用的工具。

回来目录

自 2012 年 EF5 发布后,这种做法带来了零星个点的腾飞。 首先,从 .NET
Framework 中取所有的 Entity Framework
API,并同团伙以正开之奇功能 API 组合在一起。
其次,整个开发工作改用了开源模型。 EF6
在以下网站遭遇公然开发:entityframework.codeplex.com。
您不仅能够经过会议记录、签入和可生充斥夜间转变了解团队所召开的工作,还可望
EF6 提供源代码(但是如果于 EF 团队之毕监督之下)。

Sails是一个Node.js的高中级件架构,帮助我们那个有益于的构建WEB应用程序,网址:http://www.sailsjs.org/,它主要是在Express框架的基础上发展起来的,扩展了新的功能组件,下面我们来看一下安装方法

请求牢记 EF6 是演变而未是变革。 几乎您原先掌握的具有 EF
技能都并未成形,例如如何生成 Entity Framework
模型和哪些在你的应用程序中采用 EF。 尽管 EF6 是以 ORM
基础及发展要来的,但是并从未转它向之做事办法。
如果你曾投入时学 EF,那么这种投入将无见面白费。 EF6
在少数方面转变还是较充分之,但是这些变化只有限于一些命名空间的变更,如果你来备的言辞会充分轻处理。

一 安装Sails

EF6 的效力分为以下几近似:

npm -g install sails
  1. 免费供的功用:这些职能属于中心力量的一模一样局部。
    您还是无需掌握其发出啊打算,更不必说要了解发生什么新的代码了。
    该组包括的法力有经还写张图生成引擎以及查询编译修改来加强性能,由于
    DbContext 能采用打开的总是要取的安居乐业,以及 Entity Framework
    创建的 SQL Server 数据库的改观设置。
  2. 级别设置功能:改进较生的远在是 Code First
    现在支撑映射存储过程,而以设计器中开创的模型就支持是功效。 第 9
    频段视频对这功能曾展开了挺多介绍(例如在以下网址的视频:http://channel9.msdn.com/Events/TechDays/Belgium-2013/70),而且
    CodePlex 网站提供了详尽的正经介绍。
  3. 另外一处改动更为有趣。 正如我刚提到的,EF6 的 EF API 是自从 .NET
    Framework 中提取的;它们现都通通封闭装于 NuGet 程序包中。 这象征 EF5
    采用的有的机能(例如枚举、空间数据支持以及性能改进)不再靠让 .NET
    4.5。 所以,如果您的 EF6 使用的是 .NET
    4,那么这些成效最终见面被你带来帮助。
  4. 自家呢拿 EF 设计器归入了当下同类。 从 2013 版开始,Visual Studio
    已撤这个意义,但是作为 Visual Studio 的壮大功能提供。 对于 EF6
    而言,将设计器作为扩大功能具有相当好之便宜。
    以后组织以能一直为设计器添加效果,包括 Entity Framework Power
    Tools 中即供的效用。 通过使设计器与 Visual Studio 分离,可以假设
    Microsoft 为 Visual Studio 2012 和 Visual Studio 2013 提供 EF6
    工具。
  5. 专门家功能:这些力量是中心 EF
    应用程序示例所未拥有的、您渴望有的职能。 EF6
    中出诸多这样的效力:支持异步查询与保存、返回从定义 Code First
    约定、利用新的 DbConfiguration 类型提高可扩展性(依赖让比逊色级别之
    EF6 IDbDependency
    解析程序)、支持单元测试模拟、可部署不安静连接的重试次数等于。
    您无需成为认证专家便会应用这些力量,但您于采取时必然会感到像家,具体可参见文章Entity
    Framework
    6:专家版本。

其次 建立一个Sails的型

Nido Framework 是一个基于.NET 4和 Entity Framework
6的框架,它的开源协议是GPL2,项目地址是https://nidoframework.codeplex.com/。作者以付出这框架之前以codeproject上勾画了同一首文章Architecture
Guide: ASP.NET MVC Framework + N-tier + Entity Framework and Many
More,最近作者以写了另外一首介绍文章Introduction
to Nido (FREE) Framework .NET/
C#。

sails new testProject

Upgrading to EF6

老三 启动项目

Entity Framework 6 中 Code First
的好处

cd testProject
sails lift

ASP.NET/C# Development with Nido Framework for
Dummies

季 项目之组织,基于MVC理念

葡京赌场网址 1

俺们好见见它们和是由于model,view,controller组成,它们之间的调用关系和.net
mvc十分好像,只不过.net
mvc里之model主要是依靠viewmodel,而当sails里model主要是数据模型,即.net里之Entity,它是数据表的等同种植浮泛,对于数据的持久化,sails提供了诸多种,如本地文件,mysql,mongodb,redis等,对于sqlserver我们为可以寻找到第三正的组件。

五 通过controller的action来渲染视图

我们在.net
mvc里,大家还懂得视图是由此action的render方法进行渲染之,其时sails也是这般的,可以使原生的render,也堪采取封装好的view方法,而于视图上直接下你的action返回的目标即可。

controller/action的内容

module.exports={
    index: function (req, res){
        return res.view("test/index",{title:"大叔",engTitle:"Lind"});
        //return res.view("view_name",data)//view_name参数为空表示用当前的action
    }
};

view-ejs的内容

<p>从action返回的对象-title:<%=title%></p>
<p>从action返回的对象-engTitle:<%=engTitle%></p>

调用的结果如下

葡京赌场网址 2

倘登index页面可以直接写控制器名称

葡京赌场网址 3

如果其他action希望走/test这样的路由,需要以config/route.js里进行部署,如为add这个action添加路由为/user,它的安装如

'get /user': {view: 'user/add',locals: {layout: null}},
'get /test':{view:'test/index',locals:{layout:null}}

好了,到这般一个顶简便的MVC的DEMO就抓好了,下一致节约咱们用引用Model,即数据持久化的体制,进行对数据表的curd操作,敬请期待…

 回来目录