ASP.NET MVC5+EF6+EasyUI 后台管理系統(35)-文章發布系統②-構建項目


系列目錄

注:閱讀本文,需要閱讀本系列的之前文章 代碼生成器下載地址(文章開頭處) 

接下來我們建立數據庫的表和各層的代碼

我們只需要兩張表,文章列表(MIS_Article)和類別表(MIS_Article_Category)

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
MIS_Article
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
MIS_Article_Category

 數據庫執行表之后,並更新到EF。

1.新建項目類庫,App.MIS.IBLL,App.MIS.BLL,App.MIS.IDAL,App.MIS.DAL和App.Models下的MIS文件夾(並進行相互的引用,引用參照DAL,BLL層)

2.打開我們的代碼生成器生成文章列表(MIS_Article)和類別表(MIS_Article_Category)的各層,並放入我們的類庫,然后實行注入到系統

注:生成器能生成增刪改查

最后生成目錄如下所示

 

3.我們這次使用區域,使用區域最大的好處在於項目分離

   新建區域,在Areas上右鍵新建區域,輸入MIS,以后我們一個區域代表的是一個子系統!

   可以擴展CMS(內容管理系統) CRM(客戶管理系統)等系統實現項目分離

其中的ArticleController和CategoryController ManageArticleController MyArticleController對應的是上一篇導航模塊里面的地址鏈接

其中ManageArticle是管理員能看到所有文章的模塊和具有審核功能,MyArticle只能看到自己發布的,你可以把這個發布系統,看成是一個內部的文章共享系統

4.編譯系統,看看有無引用出錯等信息,並修改,Easy to you!

現在估計可以運行系統,並能獲取簡單的視圖了

第一次生成並不能生成我下面這種效果,需要再加一些特效,我下面是已經審核過的會表為藍色。

下一節,kindeditor在MVC中使用


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM