How do I do this?http://forums.asp.net/t/1615271.aspx/1?How+do+I+do+this+Thu, 21 Oct 2010 18:39:13 -040016152714134602http://forums.asp.net/p/1615271/4134602.aspx/1?How+do+I+do+this+How do I do this? <p>When I try this I get an error message that the Response.--- type isn't supported. That this cs file has got nothing to do with HTML.<br> </p> <p>I think I need to make it so that I am in a Page_load method, but that I want to be sure that this cannot work this way. The cs file needs to be linked to a html page. I thought via the Page.cshtml file.<br> </p> <p><br> </p> <p>default.cshtml<br> <br> &lt;!DOCTYPE html&gt;<br> &lt;html lang=&quot;en&quot;&gt;<br> &nbsp;&nbsp; &nbsp;&lt;head&gt;<br> &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&lt;meta charset=&quot;utf-8&quot; /&gt;<br> &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&lt;title&gt;&lt;/title&gt;<br> &nbsp;&nbsp; &nbsp;&lt;/head&gt;<br> &nbsp;&nbsp; &nbsp;&lt;body&gt;<br> &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp; &lt;img src=@Href(&quot;Page.cshtml&quot;) /&gt;<br> &nbsp;&nbsp; &nbsp;&lt;/body&gt;<br> &lt;/html&gt;<br> <br> Page.cshtml<br> <br> @using System.Drawing;<br> <br> @{<br> &nbsp;&nbsp; &nbsp;var picture = new ProduceImageFile(1.0f, 1.0f, 1.0f, 100);<br> }<br> <br> ProduceImageFile.cs<br> <br> &nbsp;&nbsp; &nbsp;public ProduceImageFile(float zoomIN, float startReIN, float startImIN, int startColorIN)<br> &nbsp;&nbsp; &nbsp;{<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; zoom = zoomIN;<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; startRe = startReIN;<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; startIm = startImIN;<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; startColor = startColorIN;<br> <br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; objBitmap = new Bitmap(300, 300);<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; objGraphic = Graphics.FromImage(objBitmap);<br> <br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Font font = new Font(&quot;Impact&quot;, 20, FontStyle.Regular);<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; objGraphic.DrawString(&quot;Test&quot;, font, Brushes.Blue, 10, 5);<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Response.ContentType = &quot;image/jpeg&quot;;<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Response.AddHeader(&quot;content-disposition&quot;, &quot;inline; filename=test.jpg&quot;);<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // Render the image to the HTML output stream.&nbsp; &nbsp;<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; objBitmap.Save(Response.OutputStream,<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; System.Drawing.Imaging.ImageFormat.Jpeg); <br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; objGraphic.Dispose();<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; objBitmap.Dispose();<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; myPen.Dispose();<br> &nbsp;&nbsp;&nbsp; }</p> 2010-10-21T10:39:28-04:004134762http://forums.asp.net/p/1615271/4134762.aspx/1?Re+How+do+I+do+this+Re: How do I do this? <p>&nbsp;change the path and always clrear the response </p> <p>and end it </p> <p>use </p> <p>&nbsp;</p> <p>Response.Clear()</p> <p>and </p> <p>Response.End();</p> <p>&nbsp;</p> <p>i think using this will be fair enough </p> <p>Mark As Answer </p> <p>&nbsp;</p> <p>&nbsp;</p> 2010-10-21T11:54:32-04:004134987http://forums.asp.net/p/1615271/4134987.aspx/1?Re+How+do+I+do+this+Re: How do I do this? <p>I solved my problem by coding as Razor, but now I ran into another problem... Why doesn't this work? This should be so easy!</p> <p>&nbsp;</p> <p>form to enter numbers<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;form method=&quot;post&quot; action=&quot;&quot;&gt;<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;fieldset&gt;<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;legend&gt;Enter parameters&lt;/legend&gt;<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;div&gt;<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;label for=&quot;zoom&quot;&gt;Range:&lt;/label&gt;<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;input type=&quot;text&quot; name=&quot;Range&quot; value=&quot;@Request[&quot;zoom&quot;]&quot; /&gt;<br> &nbsp;&nbsp;&nbsp;&nbsp;&lt;/div&gt;<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;div&gt;<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;label for=&quot;startRe&quot;&gt;Start Real:&lt;/label&gt;<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;input type=&quot;text&quot; name=&quot;StartReal&quot; value=&quot;@Request[&quot;startRe&quot;]&quot; /&gt;<br> &nbsp;&nbsp;&nbsp;&nbsp;&lt;/div&gt;<br> &nbsp;&nbsp;&nbsp;&nbsp;<br> The Razor code to assign the input</p> <p>&nbsp;&nbsp;&nbsp; var zoom = 0.0f;<br> &nbsp;&nbsp;&nbsp; var startRe = 0.0f;<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br> &nbsp;&nbsp;&nbsp; if (IsPost) {<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var errors = false;<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (Request[&quot;zoom&quot;].IsFloat()) {<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; zoom = Request[&quot;zoom&quot;].AsFloat();<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else {<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; errors = true;<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; @:Range - floating point number required.&lt;br /&gt;<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (Request[&quot;startRe&quot;].IsFloat()) { <br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; startRe = Request[&quot;startRe&quot;].AsFloat(); <br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; {<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; errors = true;<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; @:Start Real - floating point number required.&lt;br /&gt;<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; <br> This doesn't work, I get errors and I wouldn't have a clue why this doesn't work. I get into the else part instead of the then part.</p> 2010-10-21T13:59:27-04:004135098http://forums.asp.net/p/1615271/4135098.aspx/1?Re+How+do+I+do+this+Re: How do I do this? <p><pre class="prettyprint">&lt;form method=&quot;post&quot;&gt; &lt;fieldset&gt; &lt;legend&gt;Enter parameters&lt;/legend&gt; &lt;div&gt; &lt;label for=&quot;zoom&quot;&gt;Range:&lt;/label&gt; &lt;input type=&quot;text&quot; id=&quot;zoom&quot; name=&quot;Range&quot; value=&quot;@Request[&quot;Range&quot;]&quot; /&gt; &lt;/div&gt; &lt;div&gt; &lt;label for=&quot;startRe&quot;&gt;Start Real:&lt;/label&gt; &lt;input type=&quot;text&quot; id=&quot;startRe&quot; name=&quot;StartReal&quot; value=&quot;@Request[&quot;StartReal&quot;]&quot; /&gt; &lt;/div&gt; &lt;/fieldset&gt; &lt;/form&gt; @{ var zoom = &quot;&quot;; var startRe = &quot;&quot;; var error = &quot;&quot;; if(IsPost){ zoom = Request[&quot;Range&quot;]; startRe = Request[&quot;StartReal&quot;]; float newZoom = 0; float newStartRe = 0; if(zoom.IsEmpty &amp;&amp; startRe.IsEmpty){ error = &quot;Either your range or start real are empty. Try again!&quot;; } else{ newZoom = zoom.AsFloat(); newStart = startRe.AsFloat(); } } }</pre><br> <br> </p> <p>A couple things here...</p> <p>1. your &quot;name&quot; attributes on the input elements do not match your Request[]. (input name=&quot;zoom&quot; can be captured by using Request[&quot;zoom&quot;])<br> </p> <p>2. all inputs from form post method return as strings even if the users typed numbers. </p> <p>3. there is no need to set the initial var (zoom and startRe) to 0.0f. You can leave these null (for more control down the stack).<br> </p> <p>4. my alteration to your code isnt the best - but it does follow some convention. (i would still check to see if the newZoom and newStartRe are in fact floats now - another if)</p> <p>5. you should pay attention to what the user inputs as well. Maybe some client side validation? We don't want letters converted to floats... it'll blow up</p> <p>6. we can use the error var anywhere on our page to display the message. try this: @if(!error.IsEmpty){&lt;span class=&quot;errorClass&quot;&gt;@error&lt;/span&gt;}</p> <p>I hope that helps... I didnt check the outcome but it should work.</p> <p><br> </p> <p>Erik<br> </p> 2010-10-21T14:53:53-04:004135216http://forums.asp.net/p/1615271/4135216.aspx/1?Re+How+do+I+do+this+Re: How do I do this? <p>@{<br> &nbsp;&nbsp;&nbsp; var stringvar = &quot;3.14&quot;;<br> &nbsp;&nbsp;&nbsp; var floatvar = stringvar.AsFloat();<br> }<br> &lt;!DOCTYPE html&gt;<br> &lt;html lang=&quot;en&quot;&gt;<br> &nbsp;&nbsp; &nbsp;&lt;head&gt;<br> &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&lt;meta charset=&quot;utf-8&quot; /&gt;<br> &nbsp;&nbsp; &nbsp;&nbsp;&nbsp; &nbsp;&lt;title&gt;&lt;/title&gt;<br> &nbsp;&nbsp; &nbsp;&lt;/head&gt;<br> &nbsp;&nbsp; &nbsp;&lt;body&gt;<br> &nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp; @floatvar<br> <br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Answer = 0!<br> &nbsp;&nbsp; &nbsp;&lt;/body&gt;<br> &lt;/html&gt;</p> <p>Why doesn't this work?<br> </p> 2010-10-21T16:02:19-04:004135298http://forums.asp.net/p/1615271/4135298.aspx/1?Re+How+do+I+do+this+Re: How do I do this? <p>Solution:</p> <p>NumberFormatInfo formatInfo = new NumberFormatInfo();<br> &nbsp;&nbsp;&nbsp; formatInfo.NumberDecimalSeparator = &quot;.&quot;;<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;<br> &nbsp;&nbsp;&nbsp; if (IsPost) {<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var errors = false;<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; var zoomstring = Request[&quot;Range&quot;];<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; if (zoomstring.IsFloat()) {<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; zoom = float.Parse(zoomstring, formatInfo);<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; else {<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; errors = true;<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; @:Range - floating point number required.&lt;br /&gt;<br> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; }</p> <p><br> </p> 2010-10-21T17:06:34-04:004135444http://forums.asp.net/p/1615271/4135444.aspx/1?Re+How+do+I+do+this+Re: How do I do this? <p>why are you doing var floatvar?</p> <p>You should cast it as float floatvar = stringvar.AsFloat();</p> <p>then print @floatvar<br> </p> <p><br> </p> 2010-10-21T18:39:13-04:00