C# ASP.NET文件上载到代码背后的生命周期是什么?
我想知道在用户选择在ASP.NET页面上提交上传文件后,会执行哪些事件(如果有) 我需要在IIS级别调整任何内容吗 当用户上载文件时是否应触发页面生命周期事件 我在Visual Studio的开发服务器上看到与部署到的IIS服务器不同的行为: 在开发服务器上,life 循环事件在文件被删除时触发 在已部署的服务器上选择 他们没有 为了调整上传的默认行为,我需要覆盖哪些类,我应该更改哪些C# ASP.NET文件上载到代码背后的生命周期是什么?,c#,asp.net,file-upload,C#,Asp.net,File Upload,我想知道在用户选择在ASP.NET页面上提交上传文件后,会执行哪些事件(如果有) 我需要在IIS级别调整任何内容吗 当用户上载文件时是否应触发页面生命周期事件 我在Visual Studio的开发服务器上看到与部署到的IIS服务器不同的行为: 在开发服务器上,life 循环事件在文件被删除时触发 在已部署的服务器上选择 他们没有 为了调整上传的默认行为,我需要覆盖哪些类,我应该更改哪些web.config设置 我遇到的问题是,如何在上传文件之前但在选择文件之后执行代码 另外,这与我之前的一个问题
web.config
设置
我遇到的问题是,如何在上传文件之前但在选择文件之后执行代码
另外,这与我之前的一个问题有关,但为了理解整个上传过程,我采用了一种非常不同的方式,所以我认为这是一个完全不同的问题。不,它没有文件上传事件(可能在.net 4上) 我所做的是一个从upload对象和OnLoad事件派生的类,如下所示:
public event EventHandler OnUpload;
protected void OnLoad(...){
if (this.HasFile && this.OnUpload != null)
this.OnUpload(this, EventArgs.Empty);
}
差不多吧
乔
--编辑:
哦,我重读了你的帖子,你想知道人们何时选择了一个文件,但它还没有发送到服务器?
这就是javascript。
服务器端在不向服务器发送信息的情况下无法知道用户何时选择它。
您可以开发一个WebService函数,当输入的onchanged被调用时调用它,但我不知道这是否是一个好主意。
你能用javascript来做这个吗
尝试:
希望有帮助。要在上传之前执行代码,必须是浏览器中运行的JavaSript代码。请参阅我对有关根据类型筛选文件上载的问题的回答:
您使用什么控件来获取文件上传界面?没有特殊控件,我使用ASP.NET表单,例如:嗨,是的,我发现这在某种程度上很有用,你看,我正在尝试检查文件大小,我认为JavaScript无法做到这一点。。最后,我想测量一下请求的大小,其中包含要发送的文件的大小。我相信您必须查看Flash或Silverlight上传程序。如果有一个通过JavaScript钩子提供信息的免费上传程序,我不会感到惊讶。不幸的是,我不知道我脑子里有什么想法。是的,任何ActiveX、Flash或SilverLight应用程序都可以,JavaScript无法做到这一点,我想…(那太好了):)谢谢,JavaScript可以触发服务器端的东西,但是我想知道我是否可以通过httpcontext捕捉到一些东西,这样我就可以实际操纵正在发生的事情。。检查上传的文件大小等等。让我困惑的是,当您选择一个文件时,Visual Studio中的内置服务器Cassini确实会触发事件。。为什么会这样?如果是这样,为什么它会在Cassini服务器上触发,而不是在部署的IIS上触发?Cassini是Visual Studio的专用web服务器,它可能与IE甚至web浏览器的COM控件集成,因此在Visual Studio之外的服务器上就不一样了。。。您可以使用javascript检查该文件,但最多只能在计算机中看到文件名和路径。您可以使用activeX获取文件大小,但它仅适用于IE,此处:。对于其他浏览器,我认为flash可能会帮助您。我们帮你了吗?
<asp:textbox id="t1" runat="server"/>
t1.Attributes.Add("onchange", "alert('it changed its value: ' + this.value);");