首页 > 编程语言 >如何用asp.net制作网站

如何用asp.net制作网站

时间:2024-08-19 09:22:35浏览次数:9  
标签:asp ConfigurationManager 代码 db System net Configuration 制作 NET

ASP.NET是一种基于微软公司的.NET平台的Web应用程序框架,它允许开发人员使用多种编程语言来构建动态Web网站和Web应用程序。

准备工作
在开始制作ASP.NET网站之前,需要有以下几个基本条件:

安装Visual Studio或者Visual Studio Code等IDE
.NET Framework Runtime环境
IIS服务器
创建新项目
打开Visual Studio,选择File -> New -> Project,在弹出的窗口中选择ASP.NET Web Application,并给项目命名。接着,选择一个模板(如Empty、MVC、Web Forms等),并点击Create按钮。

添加页面和控件
在Solution Explorer中,右键单击项目名称,选择Add -> New Item。在弹出的窗口中选择要添加的页面类型(如Web Form、MVC View等),并命名文件名称。接着,在页面中拖动所需的控件(如文本框、按钮、标签等)到设计视图中即可。

编写代码逻辑
为了使网站可以交互和响应用户操作,需要编写代码来处理用户请求和数据传输。在ASP.NET中,可以使用多种编程语言(如C#、VB.NET等)来编写代码逻辑。在页面中,可以使用CodeBehind文件或者内联代码的方式来编写。

调试和发布网站
在开发过程中,需要不断地对网站进行调试和测试。在Visual Studio中,可以使用调试工具(如断点、输出窗口等)来进行调试。当网站完成后,需要将其部署到服务器上,使用户可以访问。在Visual Studio中,可以通过Publish功能将网站发布到IIS服务器上。

<?xml version="1.0"?>
<!-- 
    注释
-->
<configuration>
 
  <configSections>
    <section name="RewriterConfig" type="URLRewriter.Config.RewriterConfigSerializerSectionHandler, URLRewriter" />
  </configSections>
 
  
  <appSettings>
    <add key="DbServer" value="10.10.10.10"/>
    <add key="DbUser" value="admin"/>
    <add key="DbPwd" value="admin123456"/>
    <add key="DbName" value="DbHuifu"/>
    <add key="Forget" value="http://www.xxx.com/forget.aspx"/>
  </appSettings>
 
  <connectionStrings/>
	<system.web>
		<!-- 
            设置 compilation debug="true" 将调试符号插入
            已编译的页面中。但由于这会 
            影响性能,因此只在开发过程中将此值 
            设置为 true。
        -->
 
    <httpHandlers>
      <add verb="*" path="*.html" type="URLRewriter.RewriterFactoryHandler, URLRewriter" />
    </httpHandlers>
 
    <httpModules>
      <add type="URLRewriter.ModuleRewriter, URLRewriter" name="ModuleRewriter"/>
    </httpModules>
 
 
 
    <compilation debug="true" targetFramework="4.0"/>
    <httpRuntime requestValidationMode="2.0" />
		<!--
            通过 <authentication> 节可以配置 ASP.NET 使用的 
            安全身份验证模式,
            以标识传入的用户。 
        -->
		<authentication mode="Windows"/>
		<!--
            如果在执行请求的过程中出现未处理的错误,
            则通过 <customErrors> 节可以配置相应的处理步骤。具体说来,
            开发人员通过该节可以配置
            要显示的 html 错误页
            以代替错误堆栈跟踪。
        <customErrors mode="RemoteOnly" defaultRedirect="GenericErrorPage.htm">
            <error statusCode="403" redirect="NoAccess.htm" />
            <error statusCode="404" redirect="FileNotFound.htm" />
        </customErrors>
        -->
		<globalization fileEncoding="gb2312" requestEncoding="gb2312" responseEncoding="gb2312"/>
		<pages controlRenderingCompatibilityVersion="3.5" clientIDMode="AutoID"/></system.web>
</configuration>

这是整个网站的配置,可以随时修改网站,修改后,网站会自动加载,而不用重新发布网站。在代码中,使用:System.Configuration.ConfigurationManager.AppSettings["DbServer"]来访问对应的配置。请注意,运行时使用System.Configuration.ConfigurationManager.AppSettings["DbServer"]才有效,如果代码在初始化时,就连接了DB,此时,除非代码里做了失败重试(重新使用新的配置System.Configuration.ConfigurationManager.AppSettings["DbServer"]去访问),不然系统还是用的老的配置项,访问数据库将会失败。

<%@ Application Language="C#" %>
 
<script runat="server">
 
    void Application_Start(object sender, EventArgs e) 
    {
        // 在应用程序启动时运行的代码, 修改配置会重新执行一遍这些代码。
        string db_server = System.Configuration.ConfigurationManager.AppSettings["DbServer"];
        string db_user = System.Configuration.ConfigurationManager.AppSettings["DbUser"];
        string db_pwd = System.Configuration.ConfigurationManager.AppSettings["DbPwd"];
        string db_name = System.Configuration.ConfigurationManager.AppSettings["DbName"];
        
        db.DbOpMain.SetParams(db_server, db_user, db_pwd);
        db.DbOpMain.SetDbname(db_name);
 
        Common.Op.LoadSysUserList();
        
        //-----------expire memory--------------------------
        io.expire_memory.Instance().Init(true, 10);
        thread.ThreadPoll.SetThreadNum(1);
        hread.ThreadPoll.SetMaxTaskNum(1);
        thread.ThreadPoll.Execute(new Huifu.Common.CleanMemTask());
 
        //---------------------HotQuestionRandomStart-------------
        string date_start = System.Configuration.ConfigurationManager.AppSettings["HotQuestionRandomStart"];
        Common.Def.HotQuestionRandomStart = DateTime.Parse(date_start);
    }
    
    void Application_End(object sender, EventArgs e) 
    {
        //  在应用程序关闭时运行的代码
 
    }
        
    void Application_Error(object sender, EventArgs e) 
    { 
        // 在出现未处理的错误时运行的代码
 
    }
 
    void Session_Start(object sender, EventArgs e) 
    {
        // 在新会话启动时运行的代码
 
    }
 
    void Session_End(object sender, EventArgs e) 
    {
        // 在会话结束时运行的代码。 
        // 注意: 只有在 Web.config 文件中的 sessionstate 模式设置为
        // InProc 时,才会引发 Session_End 事件。如果会话模式设置为 StateServer
        // 或 SQLServer,则不引发该事件。
 
    }
       
</script>

global.asax是网站启动时,会执行的代码。在这里,适合把DB连接,多线程初始化,内存池初始化等做好。

标签:asp,ConfigurationManager,代码,db,System,net,Configuration,制作,NET
From: https://blog.csdn.net/weixin_70367240/article/details/141286575

相关文章

  • JetBrains DataSpell 2024.2 (macOS, Linux, Windows) - 专业数据科学家的 IDE
    JetBrainsDataSpell2024.2(macOS,Linux,Windows)-专业数据科学家的IDEJetBrains跨平台开发者工具请访问原文链接:https://sysin.org/blog/jetbrains-dataspell/,查看最新版。原创作品,转载请保留出处。作者主页:sysin.orgJetBrainsDataSpell-专业数据科学家的IDE......
  • 【嵌入式linux开发】智能家居入门6:最新ONENET,物联网开放平台(QT、微信小程序、MQTT协议
    智能家居入门6:最新ONENET物联网开放平台前言最终现象一、ONENET云平台创建产品与设备二、使用MQTT客户端软件测试2.1测试前的准备2.2测试三、LInuxQT代码四、onenet云端API介绍及微信小程序代码4.1onenetAPI介绍4.2微信小程序代码五、板端运行前言ONENET云......
  • Kubernetes 的架构和核心概念
    Kurbernetes是Google旗下的容器跨主机编排工具。Kurbernetes可以自动化应用容器的部署、扩展和操作,提供以容器为中心的基础架构。一、Kurbernetes集群架构与组件Kubernetes采用主从分布式架构,节点在角色上分为Maste和Node。KubernetesMaster是控制节点,负责k8s集群的调......
  • 无网卡Ubuntu通过网线有线接入Windows主机子网,以太网子网显示“未识别的网络”,且无Int
    因为工作需要,开始在Ubuntu主机上部署CAPEv2沙箱草单的是,我的Ubuntu主机没有网卡。于是选择通过一根网线将Ubuntu与另一台Windows主机相连,使Ubuntu成为Windows的子网从而可以上网首先常规操作:控制面板→网络和Internet→网络和共享中心→更改适配器设置,进入如下界面右键WLAN→......
  • skynet的消息发送:send和call
    skynet是一个轻量级的游戏服务器框架。skynet的核心是服务,服务之间通过消息来通信,消息的来源主要有:定时器网络服务之间的调用(skynet.send或skynet.call)skynet.send和skynet.call假设我们有两个服务A和B,A发了两条消息给B:这里skynet.send和skynet.call的主要区别,在于c......
  • Aspose.Total for .NET 24.5 Crack
    FileFormatSDKs:::Morethan80%ofFortune100companiestrustAsposeSDKstoCreate,Edit,ExportandConvertover100fileformatsintheirapplications. Aspose.Total:::::ProductFamilyAspose.WordsProductSolutionAspose.PDFProductSolutionAspos......
  • 第1篇:aspnetcore,webapi项目打包发布,以.net7为例
    1.打包项目,打开visualstudio项目是ChenShiBao.AspNetCore7.0,发布成功并上传服务,启动服务以这个ChenShiBao.AspNetCore7.0.dll为准1.1生成发布包1.2选择发布形式2.在终端利用scp指令将本地已发布的应用传到linux服务上,【或通过第三方工具xshell上传发布包】终端命令:scp......
  • Magnet AXIOM 8.0 Windows x64 Multilingual - 数字取证与分析
    MagnetAXIOM8.0Windowsx64Multilingual-数字取证与分析DigitalForensicSoftware请访问原文链接:https://sysin.org/blog/magnet-axiom/,查看最新版。原创作品,转载请保留出处。作者主页:sysin.orgMagnetAXIOM-恢复并分析一个案件中的证据检查来自移动、云、......
  • .NET中各种线程同步锁
    编程编的久了,总会遇到多线程的情况,有些时候我们要几个线程合作完成某些功能,这时候可以定义一个全局对象,各个线程根据这个对象的状态来协同工作,这就是基本的线程同步。​支持多线程编程的语言一般都内置了一些类型和方法用于创建上述所说的全局对象也就是锁对象,它们的作用类似,使用......
  • .NET Core 里的优秀日志框架Serilog、NLog、Log4Net、Microsoft.Extensions.Logging
    在.NETCore中,Serilog、NLog、Log4Net、Microsoft.Extensions.Logging都是流行的日志记录框架,它们各自具有不同的特点和用法。以下是对这些日志框架使用方法的概述:目录1.Serilog2.NLog3.Log4Net4.Microsoft.Extensions.Logging1.Serilog特点:可配置性强,支持链式......