系列目錄html
注:閱讀本文,須要閱讀本系列的以前文章 代碼生成器下載地址(文章開頭處) 數據庫
接下來咱們創建數據庫的表和各層的代碼ide
咱們只須要兩張表,文章列表(MIS_Article)和類別表(MIS_Article_Category)spa
USE [AppDB] GO /****** Object: Table [dbo].[MIS_Article] Script Date: 05/15/2014 17:33:15 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO SET ANSI_PADDING ON GO CREATE TABLE [dbo].[MIS_Article]( [Id] [varchar](50) NOT NULL, --主鍵 [ChannelId] [int] NOT NULL, --頻道(預留字段,之後可能須要擴張) [CategoryId] [varchar](50) NOT NULL, --類別 [Title] [varchar](100) NOT NULL, --標題 [ImgUrl] [varchar](255) NULL, --圖片 [BodyContent] [varchar](8000) NULL, --內容 [Sort] [int] NULL, --排序 [Click] [int] NULL, --訪問次數 [CheckFlag] [int] NOT NULL, --是否審覈 [Checker] [varchar](50) NULL, --審覈人 [CheckDateTime] [datetime] NULL, --審覈時間 [Creater] [varchar](50) NULL, --建立人 [CreateTime] [datetime] NULL, --建立時間 CONSTRAINT [PK__MIS_Arti__3214EC07038683F8] PRIMARY KEY CLUSTERED ( [Id] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY] GO SET ANSI_PADDING OFFQ GO ALTER TABLE [dbo].[MIS_Article] WITH CHECK ADD CONSTRAINT [FK_MIS_Article_MIS_Article_Category] FOREIGN KEY([CategoryId]) REFERENCES [dbo].[MIS_Article_Category] ([Id]) GO ALTER TABLE [dbo].[MIS_Article] CHECK CONSTRAINT [FK_MIS_Article_MIS_Article_Category] GO ALTER TABLE [dbo].[MIS_Article] WITH CHECK ADD CONSTRAINT [FK_MIS_Article_SysUser] FOREIGN KEY([Creater]) REFERENCES [dbo].[SysUser] ([Id]) GO ALTER TABLE [dbo].[MIS_Article] CHECK CONSTRAINT [FK_MIS_Article_SysUser] GO ALTER TABLE [dbo].[MIS_Article] WITH NOCHECK ADD CONSTRAINT [FK_MIS_Article_SysUser1] FOREIGN KEY([Checker]) REFERENCES [dbo].[SysUser] ([Id]) ON DELETE SET NULL GO ALTER TABLE [dbo].[MIS_Article] CHECK CONSTRAINT [FK_MIS_Article_SysUser1] GO ALTER TABLE [dbo].[MIS_Article] ADD CONSTRAINT [DF_MIS_Article_CheckFlag] DEFAULT ((0)) FOR [CheckFlag] GO ALTER TABLE [dbo].[MIS_Article] ADD CONSTRAINT [DF__MIS_Artic__Creat__056ECC6A] DEFAULT (getdate()) FOR [CreateTime] GO
USE [AppDB] GO /****** Object: Table [dbo].[MIS_Article_Category] Script Date: 05/15/2014 17:37:44 ******/ SET ANSI_NULLS ON GO SET QUOTED_IDENTIFIER ON GO SET ANSI_PADDING ON GO CREATE TABLE [dbo].[MIS_Article_Category]( [Id] [varchar](50) NOT NULL, --主鍵 [ChannelId] [int] NULL, --預留字段 [Name] [varchar](100) NOT NULL, --類別名 [ParentId] [varchar](50) NULL, --上級ID [Sort] [int] NULL, --排序 [ImgUrl] [varchar](255) NULL,--圖片 [BodyContent] [varchar](8000) NULL,--描述 [CreateTime] [datetime] NULL,--建立時間 [Enable] [bit] NOT NULL, --是否啓用 CONSTRAINT [PK__MIS_Arti__3214EC077DCDAAA2] PRIMARY KEY CLUSTERED ( [Id] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY] GO SET ANSI_PADDING OFF GO ALTER TABLE [dbo].[MIS_Article_Category] WITH NOCHECK ADD CONSTRAINT [FK_MIS_Article_Category_MIS_Article_Category] FOREIGN KEY([ParentId]) REFERENCES [dbo].[MIS_Article_Category] ([Id]) GO ALTER TABLE [dbo].[MIS_Article_Category] NOCHECK CONSTRAINT [FK_MIS_Article_Category_MIS_Article_Category] GO ALTER TABLE [dbo].[MIS_Article_Category] ADD CONSTRAINT [DF__MIS_Artic__Paren__7FB5F314] DEFAULT ((0)) FOR [ParentId] GO ALTER TABLE [dbo].[MIS_Article_Category] ADD CONSTRAINT [DF__MIS_Artic__Creat__00AA174D] DEFAULT (getdate()) FOR [CreateTime] GO
數據庫執行表以後,並更新到EF。3d
1.新建項目類庫,App.MIS.IBLL,App.MIS.BLL,App.MIS.IDAL,App.MIS.DAL和App.Models下的MIS文件夾(並進行相互的引用,引用參照DAL,BLL層)code
2.打開咱們的代碼生成器生成文章列表(MIS_Article)和類別表(MIS_Article_Category)的各層,並放入咱們的類庫,而後實行注入到系統htm
注:生成器能生成增刪改查blog
最後生成目錄以下所示排序
3.咱們此次使用區域,使用區域最大的好處在於項目分離圖片
新建區域,在Areas上右鍵新建區域,輸入MIS,之後咱們一個區域表明的是一個子系統!
能夠擴展CMS(內容管理系統) CRM(客戶管理系統)等系統實現項目分離
其中的ArticleController和CategoryController ManageArticleController MyArticleController對應的是上一篇導航模塊裏面的地址連接
其中ManageArticle是管理員能看到全部文章的模塊和具備審覈功能,MyArticle只能看到本身發佈的,你能夠把這個發佈系統,當作是一個內部的文章共享系統
4.編譯系統,看看有無引用出錯等信息,並修改,Easy to you!
如今估計能夠運行系統,並能獲取簡單的視圖了
第一次生成並不能生成我下面這種效果,須要再加一些特效,我下面是已經審覈過的會表爲藍色。
下一節,kindeditor在MVC中使用