Another post to document something that I really don't want to have to look up ever again. I simply wanted to output XML to the browser window using ASP.NET MVC. Sounds easy, simply use:
public ContentResult Index()
{
StringWriter writer = new StringWriter();
myXmlDocument.Save(writer);
return this.Content(writer.ToString(), @"text/xml", writer.Encoding);
}
But no luck; IE7's CSS would not display the XML since IIS ASP.NET defaults to UTF-16 and the previous page was UTF-8? Yes, both pages were correctly tagged with there encoding and correctly identified by IE as UTF-8 or UTF-16. It just wouldn't process the later. Whats up with that; can't these MS kids get along. So did a search and found a soluiton posted by Robert McLaw using a modified StringWriter that accepted an encoding which would worked very nicely:
public class StringWriterWithEncoding : StringWriter
{
Encoding encoding;
public StringWriterWithEncoding(Encoding encoding)
{
this.encoding = encoding;
}
public override Encoding Encoding
{
get { return encoding; }
}
}
To implement, just use the new writer and set it's encoding as desired:
public ContentResult Index()
{
StringWriterWithEncoding writer = new StringWriterWithEncoding(Encoding.UTF8);
myXmlDocument.Save(writer);
return this.Content(writer.ToString(), @"text/xml", writer.Encoding);
}
Labels: code csharp
MET CS 601 project, using "click relevency" for it's list, is still available here
Labels: code, JavaScript, search
I found this script at webmasterworld to write out HTML or JavaScript to an IFrame on the page; acts as a very simple wysiwyg console:
<html>
<head>
<title>HomeWork 1.0</title>
</head>
<body>
<script type="text/javascript"><!--
function Txt2Frame() {
document.frames.my_frame.document.open();
document.frames.my_frame.document.write('<html><head><title>My_Frame</title></head><body>');
document.frames.my_frame.document.write(Txt2Frame.arguments[0]);
document.frames.my_frame.document.write('</body></html>');
document.frames.my_frame.document.close();
}
//--></script>
<form name="test_form">
<textarea onChange="Javascript:Txt2Frame(CharT.value);" name="CharT" cols="10" rows="5"></textarea>
</form>
<iframe frameborder="1" scrolling="0" name="my_frame" width="300" height="55"></iframe>
</body>
</html>
Labels: JavaScript
Had to look this up - again - so writing a quick note for future reference.
public static string Download(string url)
{
HttpWebRequest httpWebRequest =
(HttpWebRequest)WebRequest.Create(url);
HttpWebResponse httpWebResponse =
(HttpWebResponse)httpWebRequest.GetResponse();
Stream stream = httpWebResponse.GetResponseStream();
StreamReader streamReader =
new StreamReader(stream, Encoding.ASCII);
return streamReader.ReadToEnd();
}
Labels: code csharp
January 2007 | March 2007 | May 2007 | February 2008 | April 2008 | July 2008 | September 2008 | October 2008 | December 2008 | January 2009 | April 2009 | May 2009 | June 2009 | December 2009 | January 2010 |
Subscribe to Posts [Atom]