zoukankan      html  css  js  c++  java
  • MVC & Entity Framework(2)- controller、Models单独DLL

    继上一篇MVC & Entity Framework(1)- 开发环境之后,已经很久没更新了。接下来记录一下怎么把MVC中的controller单独拆为一个类库,然后在web项目中引用。另外,顺便尝试把Models中的实体类也拆为一个单独的类库。

    1、Controller类库项目

    ①添加一个普通的类库(.Net Framework4.5)

    ②在PM控制台输入以下命令Nuget命令安装MVC的引用——这里直接在项目的“引用”那里右键“添加引用”,效果是一样的。

     这里指定版本号4.0.20710.0,主要是为了与新建MVC 4 Web项目时自动引用的类库版本一致。可在Web项目的packages.config中查看得到。

     Install-package Microsoft.AspNet.Mvc -Version 4.0.20710.0

    ③在上面的类库中添加一个Controllers文件夹,然后在此文件夹添加类,命名规范为xxxController。类继承Controller,其它的写法并无二异。

     

    ④在Web中添加该类库项目的引用,并修改RouteConfig增加namespaces参数,以修改注册路由指定Controller的命名空间。

     public class RouteConfig
        {
            public static void RegisterRoutes(RouteCollection routes)
            {
                routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
    
                routes.MapRoute(
                    name: "Default",
                    url: "{controller}/{action}/{id}",
                    defaults: new { controller = "Stock", action = "Index", id = UrlParameter.Optional },
                    namespaces: new string[] { "Ivan.ControllerService.Controllers" }
                );
            }
        }

     2、Models类库项目

    新建一个类库项目,然后添加两个文件夹:Models和ViewModels。前者与数据库中的表相对应,后者主要是由Models组合而成,方便UI层面与数据逻辑层的交互处理。

    考虑到使用Entity Framework,输入以下PM命令。

     install-package EntityFramework -version 5.0

    完成后,可看到项目的引用多了两个dll,如下:

    至此,就可以像上一篇中提到的那样,正常创建DataContext了

  • 相关阅读:
    css
    css加号波浪号
    C++对象池
    C++11 智能指针
    C++内存泄漏检测(调试工具)
    JSONP是个嘛玩意?解决跨域问题?
    使用django + KindEditor 开发个人博客系统
    前端文本框插件KindEditor
    jQuery AJAX
    Django ModelForm表单验证
  • 原文地址:https://www.cnblogs.com/oneivan/p/4814978.html
Copyright © 2011-2022 走看看