asp.net 开发的WEB项目和数据库怎样打包成exe安装文件

http://topic.csdn.net/u/20080719/16/b5ff33e2-51ec-4516-b38c-3a5cd2f63dff.html

 

 

步骤:  
  1、添加一个新项目->选择类库模板->命名为DBCustomAction  
  2、单击项目右键->添加新项->选择安装程序类(命名为DBCustomAction.cs)  
  3、在服务器资源管理器中添加->连接到数据库->指定用户密码(选择允许保存密码)->数据库选择master  
  4、切换到DBCustomAction.cs的视图状态->将服务器资源管理器数据库连接中的master.dbo拖动到designer中  
  5、添加一个新项sql.txt(注意要使用小写),输入下列sql代码  
  CREATE TABLE [dbo].[MK_Employees] (  
  [Name] [char] (30) COLLATE SQL_Latin1_General_CP1_CI_AS NOT NULL ,  
  [Rsvp] [int] NULL ,  
  [Requests] [nvarchar] (4000) COLLATE SQL_Latin1_General_CP1_CI_AS NULL  
  ) ON [PRIMARY];  
   
  ALTER TABLE [dbo].[MK_Employees] WITH NOCHECK ADD  
  CONSTRAINT [PK_MK_Employees] PRIMARY KEY CLUSTERED  
  (  
  [Name]  
  ) ON [PRIMARY];  
  (P.S:也可以直接用SqlServer导出)  
   
  6、在sql.txt的右键属性中->生成操作->嵌入的资源  
  7、将DBCustomAction.cs切换到代码视图,添加下列代码  
  private string GetSql(string Name)  
  {  
  try  
  {  
  Assembly Asm = Assembly.GetExecutingAssembly();  
  Stream strm = Asm.GetManifestResourceStream(Asm.GetName().Name + "."+Name);  
  StreamReader reader = new StreamReader(strm);  
  return reader.ReadToEnd();  
  }  
  catch (Exception ex)  
  {  
  Console.Write("In GetSql:"+ex.Message);  
  throw ex;  
  }  
  }  
   
  private void ExecuteSql(string DataBaseName,string Sql)  
  {  
  System.Data.SqlClient.SqlCommand Command = new System.Data.SqlClient.SqlCommand(Sql,sqlConnection1);  
   
  Command.Connection.Open();  
  Command.Connection.ChangeDatabase(DataBaseName);  
  try  
  {  
  Command.ExecuteNonQuery();  
  }  
  finally  
  {  
  Command.Connection.Close();  
  }  
  }  
   
   
  protected void AddDBTable(string strDBName)  
  {  
  try  
  {  
  ExecuteSql("master","CREATE DATABASE "+ strDBName);  
  ExecuteSql(strDBName,GetSql("sql.txt"));  
  }  
  catch(Exception ex)  
  {  
  Console.Write("In exception handler :"+ex.Message);  
  }  
  }  
   
  public override void Install(System.Collections.IDictionary stateSaver)  
  {  
  base.Install(stateSaver);  
  AddDBTable(this.Context.Parameters["dbname"]);  
  }  
   
   
  8、再添加一个新项目,(选择添加到解决方案中)->项目类型为安装项目->命名为DBCustomAction Installer  
  9、选择应用程序文件夹->添加->项目输出->主输出  
  10、在方案资源管理器中->右键安装项目(DBCustomAction Installer)->视图->用户界面  
  11、选中启动结点->添加对话框->文本A  
  12、选动文本框A->右键->上移一直到最顶端  
  13、选择文本框A属性->修改BannerText,(Specify Database Name)  
  14、修改BodyText(This dialog allows you to specify the name of the database to be created on the database server. )  
  15、修改EditLabel1(Name of DB),修改Edit1Porperty(CUSTOMTEXTA1),将其他Edit2,3,4的Edit(2,3,4)Visible属性设为false;  
  16、在方案资源管理器中->右键安装项目(DBCustomAction Installer)->视图->自定义操作  
  17、选中安装结点->添加->双击应用程序文件夹->主输出来自DBCustomAction(活动)->右键属性->CustomActiveData属性修改为/dbname=[CUSTOMTEXTA1]  
  18、编译生成,OK!  


http://msdn.microsoft.com/library/default.asp?url=/library/en-us/vsintro7/html/vxwlkWalkthroughUsingCustomActionToCreateDatabaseDuringInstallation.asp

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
# 系统概述 本系统是一个旅游信息管理系统,主要功能包括旅游路线的编辑、图文介绍、订单管理和用户留言等。 # 技术实现 本系统采用asp.net和vs进行前端开发,使用sqlserver数据库进行数据存储,同时采用web结构进行架构。 ## asp.net和vs asp.net和vs都是微软开发的软件开发工具,能够提高编程效率,同时具有良好的跨平台性和安全性。asp.net可以使用c#、vb等多种编程语言进行开发,具有良好的可扩展性和易用性。 在本系统中,我们采用asp.net mvc模式进行开发,在控制器中对用户请求进行处理,在视图中呈现数据给用户。通过使用客户端和服务器之间的交互可以实现实时响应,增加了系统的交互性和可操作性。 ## sqlserver数据库 sqlserver是微软公司开发的一种关系型数据库管理系统,具有良好的稳定性和可靠性。在本系统中,我们采用sqlserver数据库进行数据存储,实现了订单管理等功能。 同时,我们进行了数据库的优化,采用索引等技术进行加速,提高了系统的访问速度和效率。 ## web结构 web结构是指基于web技术的应用程序的分层结构,包括用户层、表示层、数据处理层和数据存储层等。本系统采用了这种结构,将系统分为不同的层,每个层都有自己的职责和功能。通过这种结构,可以提高系统的可维护性和可扩展性,使得系统更具健壮性。 # 总结 采用asp.net和vs进行开发,使用sqlserver数据库进行数据存储,并采用web结构进行架构,是本系统设计的技术方案。这种方案不仅具有优秀的稳定性和可靠性,同时还提高了系统的可维护性和可扩展性,实现了完善的旅游信息管理系统。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值