C# - I.NET HttpPostedFile.SaveAs A Blocking Call?
Mar 1, 2011I was wondering whether HttpPostedFile.SaveAs function in ASP.NET C# is a blocking call.
View 1 RepliesI was wondering whether HttpPostedFile.SaveAs function in ASP.NET C# is a blocking call.
View 1 RepliesI have a standard FileUpload control, which calls a class library, where the file becomes HttpPostedFile. In beta versions of my page, I've been able to successfully use HttpContext.Current.Server.MapPath(filename)to save the file. The class library does various functions, including saving the image into /uploads and a thumbnail into/thumbs.
But now, after tidying up the layout of the site, the upload aspx page has moved to a subdirectory 'members'. I had assumed (wrongly) that calling the upload function would act as normal. However, now I receive an error because of where the page is originating from: The code wants to save the file in the non-existant folder /members/uploads and /members/thumbs
My question is: Apart from hard-coding the directory structure of my hosting provider, is there any way to use an equivilent to server.mappath which will recognise the root path of the website, and ignore sub-folders?
One method which solves my problem is to append "../" to the start of the file location, eg HttpContext.Current.Server.MapPath("../" & filename) ...However, as many pages will be able to call the upload class library (and not all of them in a sub-folder) I want to make sure I'm not always back-tracking on the subfolders.
I create a NetworkStream from a TCPClient, I then call BeginRead() followed by Thread.Sleep(60000).
It seems that the BeginRead call back function will only ever occur after Thread.Sleep() has completed. Is this expected behaviour?
What I was expecting was for the call back function to be carried out on a separate thread whenever it was ready and that the Thread.Sleep() on the current thread should have no affect on when/how the call back function runs...
I'm currently creating a VT100 terminal emulator, I wanted to created a method that would allow me to make the emulator sleep until a given string is found in the screen buffer. Initially I was trying to call WaitOne() on the IAsyncResult passed back from BeginRead() if the string was missing (this was to allow more data to pass into the system so that the check could then be carried out again until it was passed), after this failed I tried Thread.Sleep instead of WaitOne() but this blocked my BeginRead call back from firing and I'm now I'm starting to think everything is running from a single thread...
in my asp.net i need to convert httppostedfile to bmp or image format.how to convert this.am getting posted file from fileupload control.
Session["File"] = FileUpload1.PostedFile;
At present i am able to persist that using session InProc mode. except that i cant use either stateserver or sql server as the HTTPPostedFile is not serilizable. i can't use viewstate either for the same reason. Is there any work around to persist that httppostedfile across postbacks for session modes other than inProc or viewstate?
View 4 Repliesi write a html code for file saveas using file uploading control. here file saveas working for aspx code but not working for html code to call handler(ashx).
View 1 RepliesI have my asyncfileupload set up to give the posted file a new guid as its filename, what i need is the NEW filename so i can insert it into a database. PostedFile just gives me the original name, as does args.get_fileName().
Here is my codebehind:
[Code]....
I've got an asp.net mvc application that uploads a file and stores them in one of the directories where the website is located.
My question is... When you execute HttpPostedFileBase.SaveAs() method saving it with the same name as an existing filename on the folder, does HttpPostedfileBase overwrite the file?
I'm using asp:fileupload control to upload my Picture files. So the user click on browse and select the file and click on upload and in event handler of upload button there is FileUpload.PostedFile.SaveAs () etc.
Everything works fine. Accept when for big file size. e.g. I've got a file (jpg) 5.5 MB. When I try to upload this file I get an the error below.
The strange thing is I the button upload file eventhandler I check the file size. If (intFileesize < intFileSizeLimit) etc.
But the strange thig is I remove all the code in Upload eventhandler for testing/debugging and I still get the error below. So the error occurs outside the Button handler. I mean the error cause is not by Fileupload.SAveAs etc.... So the question is how can I avoid this. I mean I have built restriction of 1 mb, but This code is not reached.
I don't have any problems with small sizes e.g. I could upload 400 kb w/o problem.
So the question is what is the cause for the big file size how can I solve this?
Other question is: Is there a tool or whatever to crop the filesize and upload? I mean even if they upload 6 mb picture, I should crop that to 50kb or whatever during upload. How to aproach this? maybe a 3rd party freeware?
ERROR I get after 2-3 seconds
Oops! This page appears broken. HTTP 404 - File not found.
I am not sure that I should post this problem here or not.I am opening a SaveAs Dialog by this code:-
[Code]....
Open/Save file dialog opens by the above code. But when I try to save any image file (JPG,GIF etc), file is currepting and saving as unknown format on the mentioned path.
Is there any way to perform traditional web based Upload SaveAs option with consoleapplication. I just want to call the saveAs option by passing the filename as argument need to be saved to the location.
View 1 RepliesI have this method which does not build, it errors with the message:
Cannot implicitly convert type 'System.Web.HttpPostedFile' to 'System.Web.HttpPostedFileBase'
I really need this to be of type HttpPostedFileBase instead of HttpPostedFile, I have tried boxing and it does not work:
foreach (string inputTagName in HttpContext.Current.Request.Files)
{
HttpPostedFileBase filebase =HttpContext.Current.Request.Files[inputTagName];
if (filebase.ContentLength > 0)
{
if (filebase.ContentType.Contains("image/"))
{
SaveNonAutoExtractedThumbnails(doc, filebase);
}
}
}
In my file upload file I am getting Web.UI.WebControls.Button does not contain a definition for HasFile, FileName, SaveAs and PostedFile.
The code I am using is:[Code]....
I need a way to block users from their IP if necessary. What's the best way to approach this? Can I use Request.ServerVariables["REMOTE_ADDR"] and store the ip address as a string in the DB?
View 3 RepliesI have built an online CMS that is forms authenticated. The CMS allows administrators to upload files to the website. These files are stored outside of the Forms Authenticated section of the site so that they can be accessed from another site I have built. This other site is also forms authenticated, so users must log in and then they can access the files on the CMS site. site1.com: CMS for administrators only. Site stores all the files. site2.com: Access site.
My second website (The access site), is basically an empty shell that is filled with all of its content through the CMS using an SQL database and then displayed on the page. This works fine as only authenticated users have access to the interface used to view and download the files. My problem was, even though there is no public interface to find the files, someone could surely type [URL] and the video would be available to them. I dont really know what to do here, is there any way that people could be blocked from retrieving the files like this?
I have an ASP.NET MVC application that use the default ASP.NET Membership Provider. My customer asked to implement a feature that prevent users to log in (for example for users that resign and leave the company). I cannot use the IsApproved flag of the Membership table because that field is used to confirm user egistration. Is there any built in functionality for doing this? What are your experiences in scenarios like this?
View 1 RepliesI have a client who wants me to block his site from certain countries. Each month I add all the new IP address ranges for these countries into a sql database. If the user has a blocked IP address, the site directs them to a phoney 504 error page. This way it doesn't appear that the site is being blocked, but rather is just having difficulites. Thats the way we want it.
It works fine however, there are some users (5%) who get a 500 error. No rhyme or reason. It works across all browsers and operating systems. I have no way of finding out why from my hosting service. I can't dupliate it. I have the following code that runs at Page_Init
[Code]....
I am encountering issues in the navigation defined in a master page which are being blocked by validators pages that inherit from the master. How can I disable these validators so that they do not prevent my button actions in the master page?I am using AJAX controls in child pages.
View 2 RepliesI want to increase the security of my website, does creating http module that block certain ip address will increase security?
Since IP Address can be manipulated if I'm not mistaken, I'm not sure that creating HTTP Module will help.
We have a page that makes a request to a 3'rd party web service. When under heavy load this response time extends significantly, however the 3'rd party reports back that there times for processing remains constant. There timings show that from the time they receive a request to the time they send it back is always around 1.5-2.0 seconds. Now we are experiencing wait times of over 20 seconds. My understanding of ASP.NET is that each request will run on a IIS thread pool thread and make the request to the 3'rd party service return and process. So I don't really understand what could be blocking on our end. Is there something I am missing?? Is there a threshold limit beyond IIS that is blocking?
If I am missing something a physical book recommendation that covers this subject would also be a very welcome addition to any answer.
My application is showing lots of thread wait events in the GetScriptReferencesInternal method of ScriptObjectBuilder. I am running a load test with 150 concurrent sessions and in 10 minutes I see 1000 thread block events. Each event stalls the execution of the thread for an average of 6 seconds.
View 2 RepliesWhenever I use TransmitFile to send a file, the sirte becomes blocked to the user until the file completes. IOW, the user cannot navigate the site.If the user cancels the transfer, it still blocks until the site either times out OR finishes sending the data. I can't tell which, but I know if for example I cancel a 30MB file immediately after starting the download, it takes longer to recover than a 10 MB file.Here is the relevant code:
Response.ContentType = "application/octet-stream";
Response.AppendHeader("Content-Disposition", contdisp);
Response.AddHeader("Content-Length", new FileInfo(fullfilename).Length.ToString());
Response.TransmitFile(fullfilename);
Response.Flush();
I'm generating a file on the server which takes some time. For this, I have a hidden iframe which I then set the .src attribute to an aspx file i.e iframe.src = "/downloadFile.aspx"While this is taking place, I'd like to have a call to a web service return the progress. To do this, I thought I could use window.setInterval or window.setTimeout but Javascript seems to be blocked as soon as I set the iframe src attribute.Does anyone know how to get around this or perhaps try a different approach?I have also tried handlers, but the request never gets to the server so I'm assuming is a browser/javascript issue.
//Function that gets the file
function GetFile() {
setTimeout(GetProgress, 1000);
var iframe = document.createElement("iframe");
[code]...
i m using two grid in both gird i have a text box control on which i apply some java script funtion. my broblem is that when i press a tab key then its block my textbox. it means i m not able to press any key in that box even mouse click is not working.
my both grid in a same update panal but when i set focus out of that update panal and back to my text box they are start working properly.
i m applying a Web method on that text box also which call by javascript.3
I have a bookingwith credit card page in my application and users will enter their crdit card details inside the textboxes. but after they enter them and post it the browser cache the data and after that in the same textbox, it can be autocomplated.
View 1 Replies