服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - ASP教程 - ASP.NET 配置

ASP.NET 配置

2023-05-08 03:26未知服务器之家 ASP教程

配置 一个 ASP.NET 应用程序的行为是由以下两个配置文件中的不同设置决定的: machine.config web.config machine.config 文件包含所有支持设置项的默认和设置机器的具体值。机器的设置是由系统管理员,且应用程序通常不能访问这个文件。

配置

一个 ASP.NET 应用程序的行为是由以下两个配置文件中的不同设置决定的:

  • machine.config
  • web.config

machine.config 文件包含所有支持设置项的默认和设置机器的具体值。机器的设置是由系统管理员,且应用程序通常不能访问这个文件。

然而,一个应用程序,可以通过在它的根文件夹中创建 web.config 文件覆盖默认值。web.config 文件是 machine.config 文件的一个子集。

如果应用程序包含子目录,那么它可以为每个文件夹定义一个 web.config 文件。每个配置文件的范围是用一个分层的自上而下的方式确定。

任何 web.config 文件都可以在本地扩展,限制,或重写任何设置在上层的定义。

Visual Studio 会为每个项目生成默认的 web.config 文件。应用程序可以在没有 web.config 文件的情况下执行,然而,我们不能调试一个没有 web.config 文件的应用程序。

下图显示的是用于 web 服务教程中的解决方案资源管理器为样本的例子:

ASP.NET 配置Configuration Section Handler 声明

配置节处理程序声明是包含在 的标签中的,每个配置处理程序指定配置节的名称,并包含在提供了一些配置数据的文件中。它具有以下基本语法:

<configSections> <section /> <sectionGroup /> <remove /> <clear/> </configSections>

它具有以下元素:

  • Clear – 所有涉及继承的节和节组的引用。
  • Remove – 删除一个继承引用的部分和部分组。
  • Section – 定义了配置节处理程序和配置元素之间的关联。
  • Section group – 它定义了一个配置节处理程序与配置节之间的关联。

应用程序设置

应用程序设置允许存储只读访问的应用程序的名称-数值对。例如,你可以定义一个自定义应用程序设置如下:

<configuration> <appSettings> <add key="Application Name" value="MyApplication" /> </appSettings> </configuration>

例如,你还可存储一本书的 ISBN 号和名字数据对:

<configuration> <appSettings> <add key="appISBN" value="0-273-68726-3" /> <add key="appBook" value="Corporate Finance" /> </appSettings> </configuration>

连接字符串

连接字符串展示的是可用于网站的数据库连接字符串。例如:

<connectionStrings> <add name="ASPDotNetStepByStepConnectionString" connectionString="Provider=Microsoft.Jet.OLEDB.4.0; Data Source=E:\projectsdatacaching / datacachingApp_DataASPDotNetStepByStep.mdb" providerName="System.Data.OleDb" /> <add name="booksConnectionString" connectionString="Provider=Microsoft.Jet.OLEDB.4.0; Data Source=C: databindingApp_Dataooks.mdb" providerName="System.Data.OleDb" /> </connectionStrings>

系统的网络元素

system.web 元素为 ASP.NET 配置节指定了根元素,并且包含了配置 ASP.NET Web 应用程序和控制应用程序运转的配置元素。

它控制大多数比较常见的需要调整的配置元素。该元素的基本语法如下:

<system.web> <anonymousIdentification> <authentication> <authorization> <browserCaps> <caching> <clientTarget> <compilation> <customErrors> <deployment> <deviceFilters> <globalization> <healthMonitoring> <hostingEnvironment> <httpCookies> <httpHandlers> <httpModules> <httpRuntime> <identity> <machineKey> <membership> <mobileControls> <pages> <processModel> <profile> <roleManager> <securityPolicy> <sessionPageState> <sessionState> <siteMap> <trace> <trust> <urlMappings> <webControls> <webParts> <webServices> <xhtmlConformance> </system.web>

下表提供了一些常用的 system.web 元素的子元素的简要描述:

AnonymousIdentification

这是在需要用户身份确认时对未被认证的用户进行识别的。

Authentication

它是配置授权支持的,基本的语法是:

<authorization> <allow .../> <deny .../> </authorization>

Caching

它配置缓存设置,基本的语法是:

<caching> <cache>...</cache> <outputCache>...</outputCache> <outputCacheSettings>...</outputCacheSettings> <sqlCacheDependency>...</sqlCacheDependency> </caching>

CustomErrors

它定义了自定义错误消息,基本的语法是:

<customErrors defaultRedirect="url" mode="On|Off|RemoteOnly"> <error. . ./> </customErrors>

Deployment

它定义了用于部署的配置设置。基本语法如下:

<deployment retail="true|false" />

HostingEnvironment

它为托管环境定义了配置设置。基本语法如下:

<hostingEnvironment idleTimeout="HH:MM:SS" shadowCopyBinAssemblies="true|false" shutdownTimeout="number" urlMetadataSlidingExpiration="HH:MM:SS" />

Identity

它用于配置对应用程序的认证机制,基本语法如下:

<identity impersonate="true|false" userName="domainusername" password="<secure password>"/>

MachineKey

它用于配置用于加密和解密数据的表单验证 Cookie 的密钥。

它还允许配置验证密钥对视图状态数据和 Forms 身份验证票证执行消息认证检查。基本的语法是:

<machineKey validationKey="AutoGenerate,IsolateApps" [String] decryptionKey="AutoGenerate,IsolateApps" [String] validation="HMACSHA256" [SHA1 | MD5 | 3DES | AES | HMACSHA256 | HMACSHA384 | HMACSHA512 | alg:algorithm_name] decryption="Auto" [Auto | DES | 3DES | AES | alg:algorithm_name] />

Membership

它用于配置管理和认证用户参数。基本的语法是:

<membership defaultProvider="provider name" userIsOnlineTimeWindow="number of minutes" hashAlgorithmType="SHA1"> <providers>...</providers> </membership>

Pages

它提供了网页的具体配置。基本的语法是:

<pages asyncTimeout="number" autoEventWireup="[True|False]" buffer="[True|False]" clientIDMode="[AutoID|Predictable|Static]" compilationMode="[Always|Auto|Never]" controlRenderingCompatibilityVersion="[3.5|4.0]" enableEventValidation="[True|False]" enableSessionState="[True|False|ReadOnly]" enableViewState="[True|False]" enableViewStateMac="[True|False]" maintainScrollPositionOnPostBack="[True|False]" masterPageFile="file path" maxPageStateFieldLength="number" pageBaseType="typename, assembly" pageParserFilterType="string" smartNavigation="[True|False]" styleSheetTheme="string" theme="string" userControlBaseType="typename" validateRequest="[True|False]" viewStateEncryptionMode="[Always|Auto|Never]" > <controls>...</controls> <namespaces>...</namespaces> <tagMapping>...</tagMapping> <ignoreDeviceFilters>...</ignoreDeviceFilters> </pages>

Profile

它用于配置用户配置文件参数。基本的语法是:

<profile enabled="true|false" inherits="fully qualified type reference" automaticSaveEnabled="true|false" defaultProvider="provider name"> <properties>...</properties> <providers>...</providers> </profile>

RoleManager

为用户角色配置设置信息。基本的语法是:

<roleManager cacheRolesInCookie="true|false" cookieName="name" cookiePath="/" cookieProtection="All|Encryption|Validation|None" cookieRequireSSL="true|false " cookieSlidingExpiration="true|false " cookieTimeout="number of minutes" createPersistentCookie="true|false" defaultProvider="provider name" domain="cookie domain"> enabled="true|false" maxCachedResults="maximum number of role names cached" <providers>...</providers> </roleManager>

SecurityPolicy

用于配置安全策略。基本的语法是:

<securityPolicy> <trustLevel /> </securityPolicy>

UrlMappings

它定义了用于隐藏原始URL的映射,并提供更具用户友好性的的 URL 。基本的语法是:

<urlMappings enabled="true|false"> <add.../> <clear /> <remove.../> </urlMappings>

WebControls

它提供了对客户端脚本共享位置的名称。基本的语法是:

<webControls clientScriptsLocation="String" />

WebServices

用于配置 Web 服务。

延伸 · 阅读

精彩推荐
  • ASP教程ASP GetRef 函数指针试探

    ASP GetRef 函数指针试探

    近日在学习C++,看到函数指针,由于之前一直搞ASP,所以想ASP里面是否也有这个函数指针的东西,百度了一下,没有太多关于此方面的介绍,于是翻了翻...

    asp之家4002019-09-09
  • ASP教程ASP 中 Split 函数的实例分析

    ASP 中 Split 函数的实例分析

    大家有碰到过要想取一字符串里的某些值而无从下手?有没有觉得看书或教材对split的写法糊里糊涂……如果有此疑问的话,请看下面我对例子的解释,相...

    asp教程网2762019-10-06
  • ASP教程asp空间判断jmail组件是否安装或支持的代码

    asp空间判断jmail组件是否安装或支持的代码

    今天在开发用户留言,一份存到数据库中,另外一份要发送到制定的邮箱中,因不知道服务器是否支持,如果支持则发送留言信息到email中。...

    服务器之家2712019-09-01
  • ASP教程asp+javascript实现404页的处理转换

    asp+javascript实现404页的处理转换

    asp+javascript实现404页的处理转换...

    asp教程网3412019-09-25
  • ASP教程ASP.NET MVC 页面和布局

    ASP.NET MVC 页面和布局

    本节介绍 ASP.NETMVC 应用程序中每个页面的布局以及样式该如何设置。 为了学习 ASP.NET MVC,我们将构建一个 Internet 应用程序。 第 3 部分:添加样式和统一的...

    未知782023-05-08
  • ASP教程定期自动运行ASP程式的代码

    定期自动运行ASP程式的代码

    常有人希望在某個特定時間,可以自動某支ASP程式,進行某項作業,比如:發電子信、資料庫整理等。 方法 一、你可以去找aspexe元件來使用 二、你可以使...

    asp代码网3502019-10-11
  • ASP教程asp 去掉html中的table正则代码函数

    asp 去掉html中的table正则代码函数

    asp 去掉html中的table正则代码函数...

    脚本之家5452019-09-12
  • ASP教程Asp无组件上传进度条解决方案

    Asp无组件上传进度条解决方案

    一、无组件上传的原理 我还是一点一点用一个实例来说明的吧,客户端HTML如下。要浏览上传附件,我们通过input type=file元素,但是一定要注意必须设置f...

    asp教程网5602019-10-10