Communiquez avec les autres et partagez vos connaissances professionnelles

Inscrivez-vous ou connectez-vous pour rejoindre votre communauté professionnelle.

Suivre

What's the difference between Response.Write() and Response.Output.Write()?

user-image
Question ajoutée par Muhammad Kamran Khatri , Project Manager , Etisalat
Date de publication: 2014/02/17
Fahad Sattar Mughal
par Fahad Sattar Mughal , Project Manager ERP and MIS/IT , Intercoil Group of Companies

Response.Output.Write() gives you String.Format-style formatted output and the Response.Write() doesn't. FOR ExampleResponse.Write("Current Date Time is "+DateTime.Now.ToString()); Response.Output.Write("{0} is {1:d}", "Current Date Time is: ",DateTime.Now);

Tanweer Ahmed
par Tanweer Ahmed , Application Developer , Department of Revenue,Registration and Land Reforms,Government of Jharkhand

Response.Write and Response.Output.Write are both used to write messages on the screen

 

the only diffrence is Response.Output.Write allows us to write a more formatted output

Arun Raj Alampatta
par Arun Raj Alampatta , Senior Software Engg. , Orion India Systems

In ASP.NET the Response object is of type HttpResponse and when you say Response.Write you're really saying (basically) HttpContext.Current.Response.Write and calling one of the many overloaded Write methods of HttpResponse. 

Response.Write then calls .Write() on it's internal TextWriter object:

public void Write(object obj){ this._writer.Write(obj);}

HttpResponse also has a Property called Output that is of type, yes, TextWriter, so:

public TextWriter get_Output(){ return this._writer; }

Which means you can to the Response whatever a TextWriter will let you.  Now, TextWriters support a Write() method ala String.Format, so you can do this:

Response.Output.Write("Scott is {0} at {1:d}", "cool",DateTime.Now);

But internally, of course, this this is happening:

public virtual void Write(string format, params object[] arg){    this.Write(string.Format(format, arg)); } 

More Questions Like This