·您现在的位置: 云翼网络 >> 文章中心 >> 网站建设 >> 网站建设开发 >> ASP.NET网站开发 >> 从零开始编写自己的C#框架(22)——添加普通列表页面

从零开始编写自己的C#框架(22)——添加普通列表页面

作者:佚名      ASP.NET网站开发编辑:admin      更新时间:2022-07-23

从零开始编写自己的C#框架(22)——添加普通列表页面

  普通列表页面指的是上一章那种有层次感列表以外的正常列表页面,由于上一章已讲解了正常添加页面的相关操作了,所以部分相关的操作本章节就不再罗嗦重复一次了。大家可以试试先用本章内容中的一些简单介绍,自己使用上一章下载的解决方案来实现一下,做做练习。

  首先还是打开数据字典,创建广告内容表

  在这里要说明一下的是,大家在对数据字典进行操作后(增、改、删),一定要在数据字典中的“版本”工作表中添加更新历史,以方便后面的维护人员查看(一定要养成一种良好的开发习惯),如下图

  然后还是使用ExcelToSQLString2.91_sql.exe工具生成SQL语句,并在数据库中创建数据表,下面是生成好的SQL语句,请在数据库查询分析表中执行

  1 /****** Object:  Table [dbo].[Advertisement]    Script Date: 2014/7/9 17:07:11  ******/  2 if exists (select * from dbo.sysobjects where id = object_id(N'[dbo].[Advertisement]') and OBJECTPROPERTY(id, N'IsUserTable') = 1)  3 drop table [dbo].[Advertisement]  4 GO  5   6 /****** Object:  Table [dbo].[Advertisement]    Script Date: 2014/7/9 17:07:11   ******/  7 CREATE TABLE [dbo].[Advertisement] (  8   [Id] [int] IDENTITY (1, 1) NOT NULL,  9   [Name] [nvarchar] (50) NOT NULL, 10   [Content] [nvarchar] (100) NOT NULL, 11   [Url] [nvarchar] (200) NOT NULL, 12   [KeyWord] [nvarchar] (50) NOT NULL, 13   [AdvertisingPosition_Id] [int] NOT NULL, 14   [AdvertisingPosition_Name] [nvarchar] (20) NOT NULL, 15   [AdImg] [nvarchar] (250) NOT NULL, 16   [ShowRate] [int] NOT NULL, 17   [StartTime] [datetime] NOT NULL, 18   [EndTime] [datetime] NOT NULL, 19   [IsDisplay] [tinyint] NOT NULL, 20   [HitCount] [int] NOT NULL, 21   [Sort] [int] NOT NULL, 22   [Manager_Id] [int] NOT NULL, 23   [Manager_CName] [nvarchar] (20) NOT NULL, 24   [UpdateDate] [datetime] NOT NULL 25 ) ON [PRIMARY] 26 GO 27  28 ALTER TABLE [dbo].[Advertisement] WITH NOCHECK ADD 29   CONSTRAINT [PK_Advertisement] PRIMARY KEY  CLUSTERED 30 ( 31  [Id] 32 )  ON [PRIMARY] 33 GO 34  35 ALTER TABLE [dbo].[Advertisement] ADD 36   CONSTRAINT [DF_Advertisement_Name] DEFAULT ('') FOR [Name], 37   CONSTRAINT [DF_Advertisement_Content] DEFAULT ('') FOR [Content], 38   CONSTRAINT [DF_Advertisement_Url] DEFAULT ('') FOR [Url], 39   CONSTRAINT [DF_Advertisement_Keyword] DEFAULT ('') FOR [Keyword], 40   CONSTRAINT [DF_Advertisement_AdvertisingPosition_Id] DEFAULT (0) FOR [AdvertisingPosition_Id], 41   CONSTRAINT [DF_Advertisement_AdvertisingPosition_Name] DEFAULT ('') FOR [AdvertisingPosition_Name], 42   CONSTRAINT [DF_Advertisement_AdImg] DEFAULT ('') FOR [AdImg], 43   CONSTRAINT [DF_Advertisement_ShowRate] DEFAULT (0) FOR [ShowRate], 44   CONSTRAINT [DF_Advertisement_StartTime] DEFAULT (getdate()) FOR [StartTime], 45   CONSTRAINT [DF_Advertisement_EndTime] DEFAULT (getdate()) FOR [EndTime], 46   CONSTRAINT [DF_Advertisement_IsDisplay] DEFAULT (0) FOR [IsDisplay], 47   CONSTRAINT [DF_Advertisement_HitCount] DEFAULT (0) FOR [HitCount], 48   CONSTRAINT [DF_Advertisement_Sort] DEFAULT (0) FOR [Sort], 49   CONSTRAINT [DF_Advertisement_Manager_Id] DEFAULT (0) FOR [Manager_Id], 50   CONSTRAINT [DF_Advertisement_Manager_CName] DEFAULT ('') FOR [Manager_CName], 51   CONSTRAINT [DF_Advertisement_UpdateDate] DEFAULT (getdate()) FOR [UpdateDate]  52 GO 53  54 CREATE  INDEX [IX_Advertisement__Name] ON [dbo].[Advertisement]([Name]) ON [PRIMARY] 55 GO 56  57 CREATE  INDEX [IX_Advertisement__Keyword] ON [dbo].[Advertisement]([Keyword]) ON [PRIMARY] 58 GO 59  60 CREATE  INDEX [IX_Advertisement__AdvertisingPosition_Id] ON [dbo].[Advertisement]([AdvertisingPosition_Id]) ON [PRIMARY] 61 GO 62  63 CREATE  INDEX [IX_Advertisement__StartTime] ON [dbo].[Advertisement]([StartTime]) ON [PRIMARY] 64 GO 65  66 CREATE  INDEX [IX_Advertisement__EndTime] ON [dbo].[Advertisement]([EndTime]) ON [PRIMARY] 67 GO 68  69 CREATE  INDEX [IX_Advertisement__IsDisplay] ON [dbo].[Advertisement]([IsDisplay]) ON [PRIMARY] 70 GO 71  72 CREATE  INDEX [IX_Advertisement__Sort] ON [dbo].[Advertisement]([Sort]) ON [PRIMARY] 73 GO 74  75 exec sp_addextendedproperty N'MS_Description', N'主键Id', N'user', N'dbo', N'table', N'Advertisement', N'column', N'Id' 76 GO 77  78 exec sp_addextendedproperty N'MS_Description', N'标题', N'user', N'dbo', N'table', N'Advertisement', N'column', N'Name' 79 GO 80  81 exec sp_addextendedproperty N'MS_Description', N'备注', N'user', N'dbo', N'table', N'Advertisement', N'column', N'Content' 82 GO 83  84 exec sp_addextendedproperty N'MS_Description', N'链接Url', N'user', N'dbo', N'table', N'Advertisement', N'column', N'Url' 85 GO 86  87 exec sp_addextendedproperty N'MS_Description', N'关键字,只能由字母数字组成,主要用于模板标签 {%ad-InfoKey%}', N'user', N'dbo', N'table', N'Advertisement', N'column', N'Keyword' 88 GO 89  90 exec sp_addextendedproperty N'MS_Description', N'广告位置Id', N'user', N'dbo', N'table', N'Advertisement', N'column', N'AdvertisingPosition_Id' 91 GO 92  93 exec sp_addextendedproperty N'MS_Description', N'广告位置名称', N'user', N'dbo', N'table', N'Advertisement', N'column', N'AdvertisingPosition_Name' 94 GO 95  96 exec sp_addextendedproperty N'MS_Description', N'图片', N'user', N'dbo', N'table', N'Advertisement', N'column', N'AdImg' 97 GO 98  99 exec sp_addextendedproperty N'MS_Description', N'显示频率(同一个位置有多个广告时,这里用来计算它随机出现的频率)', N'user', N'dbo', N'table', N'Advertisement', N'column', N'ShowRate'100 GO101 102 exec sp_addextendedproperty N'MS_Description', N'开始时间', N'user', N'dbo', N'table', N'Advertisement', N'column', N'StartTime'103 GO104 105 exec sp_addextendedproperty N'MS_Description', N'结束时间', N'user', N'dbo', N'table', N'Advertisement', N'column', N'EndTime'106 GO107 108 exec sp_addextendedproperty N'MS_Description', N'审核, 0=False,1=True,', N'user', N'dbo', N'table', N'Advertisement', N'column', N'IsDisplay'109 GO110 111 exec sp_addextendedproperty N'MS_Description', N'点击数', N'user', N'dbo', N'table', N'Advertisement', N'column', N'HitCount'112 GO113 114 exec sp_addextendedproperty N'MS_Description', N'排序', N'user', N'dbo', N'table', N'Advertisement', N'column', N'Sort'115 GO116 117 exec sp_addextendedproperty N'MS_Description', N'修改人员id', N'user', N'dbo', N'table', N'Advertisement', N'column', N'Manager_Id'118 GO119 120 exec sp_addextendedproperty N'MS_Description', N'修改人员姓名', N'user', N'dbo', N'table', N'Advertisement', N'column', N'Manager_CName'121 GO122 123 exec sp_addextendedproperty N'MS_Description', N'修改时间', N'user', N'dbo', N'table', N'Advertisement', N'column', N'UpdateDate'124 GO
View Code

  跟着打开VS,找到数据层与逻辑层的SubSonic文件夹,选择模板并点击右键,找到“运行自定义工具”,点击重新运行生成相关的模板类

  打开Informations文件夹,将InformationList.aspx与InformationEdit.aspx复制到Advertisements(上一章广告文件夹命名错了,我将AdvertisingPositions重新修改为Advertisements)文件夹中

  将它们修改名称为AdvertisementList.aspx与AdvertisementEdit.aspx

  然后将页面中的“Information”替换成“Advertisement”,“信息”替换为“广告”。

  下面是改好的AdvertisementList.aspx页面代码

  1 <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="AdvertisementList.aspx.cs" Inherits="Solution.Web.Managers.WebManage.Advertisements.AdvertisementList" %>  2 <%@ Import Namespace="DotNet.Utilities" %>  3   4 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">  5 <html xmlns="http://www.w3.org/1999/xhtml">  6 <head id="Head1" runat="server">  7     <title>广告列表</title>  8 </head>  9 <body> 10     <form id="form1" runat="server