1.IIS7上关于对应WEB site的修改的一下配置会直接反映到web.config文件里面,所以source本身也要记得上传更新,以免丢失设置
比如MIME的设置;
2. WEB site如果存在假想site 那么如何消除主site和子site配置上的冲突
主site的Web.config 配置文件里不想被子site继承的部分加上<location ></location >标签
<location path="." allowOverride="false" inheritInChildApplications="false">
...
</location>
如下
<location path="." allowOverride="false" inheritInChildApplications="false">
<system.webServer>
<modules runAllManagedModulesForAllRequests="true" />
<directoryBrowse enabled="false" />
</system.webServer>
</location>
3.如果一个网站放在2个服务器上,而且一台式是IIS6服务器另一台是IIS7服务器
那么就可能出现访问error
对策1:
Web.config中统一设置<pages EnableEventValidation="false"/>
对策2:
关联页面的属性设置一下:EnableEventValidation="False"
4.IIS7 handlers设定
Web.config 配置文件
<system.webServer>
<modules runAllManagedModulesForAllRequests="true"/>
<handlers>
<add name="css" path="*.css" verb="*" modules="IsapiModule" scriptProcessor="C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_isapi.dll" resourceType="Unspecified" requireAccess="None" preCondition="classicMode,runtimeVersionv4.0,bitness32" />
</handlers>
</system.webServer>
4.因为有下面的代码IIS7上会出现Page_Load执行2次的问题。
①<%@ Page language="c#" Codebehind="***.aspx.cs" AutoEventWireup="True" Inherits="**" %>
②
override protected void OnInit(EventArgs e)
{
InitializeComponent();
base.OnInit(e);
}
private void InitializeComponent()
{
this.Load += new System.EventHandler(this.Page_Load);
}
ASP.NET 页框架支持以自动方式将页事件与方法相关联。如果 Page 指令的 AutoEventWireup 属性被设置为 true(或者如果缺少此属性,因为它默认为 true),该页框架将自动调用页事件,即 Page_Init 和 Page_Load 方法。在这种情况下,不需要任何显式的 Handles 子句或委托。
AutoEventWireup 属性的缺点是它要求页事件处理程序具有特定、可预测的名称。这限制了您在为事件处理程序命名时的灵活性。因此,在 Visual Studio 中,AutoEventWireup 属性在默认情况下设置为 false,设计器会生成用于将页事件绑定到方法的显式代码。
如果将 AutoEventWireup 设置为 true,Visual Studio 将生成用于绑定事件的代码,页框架将自动基于事件的名称来调用事件。这可能会导致在该页运行时两次调用相同的事件代码。标准化程序,建议设置为true。
对策1:
①中的AutoEventWireup设置为false
对策2:
或者是把
※資料:②中显示绑定代码删除
https://msdn.microsoft.com/zh-cn/library/ydy4x04a(VS.80).aspx
https://msdn.microsoft.com/zh-cn/ch-cn/library/y3bwdsh3(v=vs.80).aspx