May 2009 - Posts

Nu så kan man ladda ner Svenska språket så man kan få sin Windows 7 RC på Svenska. Det ska jag troligen göra när jag kommer hem idag :)

Via Idg.se

Nu tänkte jag visa två tips. Det första är hur man får en klients ip-adress och det andra är hur man får fram serverns tid.

 

Få fram ip adress

Måste använda namespace System.Net

public static string GetUserIp
{
get
{
return HttpContext.Current.Request.ServerVariables["REMOTE_ADDR"];
}
}

 

Få fram serverns tid

public static string GetServerTime
{
get
{
return System.DateTime.Now.ToLongTimeString();
}
}

För att testa så kan man skriva

Response.Write(GetServerTime);
Response.Write(GetUserIp);

Posted Wednesday, May 27, 2009 3:38 PM by Frozzare | with no comments
Filed under: , ,

This day i made som updates to jQuery.LivePreview.

Update log

  1. Fix some errors
  2. Change language to English from Swedish in the js files.
  3. jquery.livepreview.min.js - a min version off the plugin. About 1kb
  4. The not mini version is about 2kb
Project url: http://jquerylp.codeplex.com

jQuery är ett lätt använt javascript biblotek. Jag har idag börjat byggt på en plugin, jQuery Live Preview. Det är en plugin som kan göra en förhansgranskning av det man skriver i till exempel en textbox innan man har sparat det.

Visa demostration

I demot har jag inkluderat alla inställningar som min plugin har.

 

$('#comments').LivePreview({
    PreviewText: 'Live förhansgranskning',
    ToggleEnable: 'true',
    ToggleText: 'Visa eller stäng',
    Toggle: '400'
    });

Men det går att köra det $('#comments').LivePreview(); utan att behöva ställa in några inställningar. Man kan aktivera att rutan kan bli göm eller visad av  jQuery toggle funktionen. Så man kan välja vad det ska stå på Live Preview och vad som ska stå på länken för toggle. Det är en lätt användbar plugin som kan styra med css för utseende.

Nu har dom släppt Beta1 på Visual Studio 2010 och ASP.Net 4.0

Här är en bra blogg som beskriver en del

 

Klicka på bilderna för att se dom i stor bild

Svenska

Engelska

Ni har säkert sätt att på en del hemsidor så använder dom till exempel: www.minsida.se/Image.ashx?path=bild.jpg istället för www.minsida.se/bild.jpg. Det finns en del sätt att göra detta på. Det jag tänkte visa är med en Generic handler.

Högerklicka på ditt projekt/website och välj Add new item och leta upp Generic handler. När den filen skapas så kommer den classen att se ut såhär.

    [WebService(Namespace = "http://tempuri.org/")]
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
public class Image : IHttpHandler
{
public void ProcessRequest(HttpContext context)
{
context.Response.ContentType = "text/plain";
context.Response.Write("Hello World");
}
public bool IsReusable
{
get
{
return false;
}
}
}
Vi kan ta bort 
[WebService(Namespace = "http://tempuri.org/")] och
[WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)] i topen på våran class. Dom behöver inte. Sedan tar vi bort allt innan för
ProcessRequest(...){ all kod här }.

Sedan skriver vi in detta

if (context.Request.QueryString["path"] != null)
{
/// Här ska våran kod in senare
}
else 
{
} 
 
Om något finns efter = så kommer den gå in i if(..) och köra vidare. om inte  så kör den vidare i else där man kan skriva in ett fel meddelanden om man vill. 
Sedan behöver vi skapa en string som vi kallar imgUrl där vi fångar upp det som står efter = i webbadressen. 
string imgUrl = context.Server.MapPath("~/" + context.Request.QueryString["path"]);

context.Server.MapPath(...) laddar den filen vi vill komma åt. Sedan måste vi ta reda på ifall det är en .jpg, .gif eller .png bild.

Det gör vi lättast såhär:

 

if (imgUrl.EndsWith("jpg"))
{
context.Response.ContentType = "image/jpeg";
context.Response.TransmitFile(imgUrl);
}
else if (imgUrl.EndsWith("gif"))
{
context.Response.ContentType = "image/gif";
context.Response.TransmitFile(imgUrl);
}
else if (imgUrl.EndsWith("png"))
{
context.Response.ContentType = "image/png";
context.Response.TransmitFile(imgUrl);
}
else
{
context.Response.Write("fel bildformat");
}

 Både stringen och koden ovan klistra vi in imellan if(context.Request.Querystring["path"] != null)

Våran slutliga kod blir såhär

 

public class Image : IHttpHandler
{

public void ProcessRequest(HttpContext context)
{
if (context.Request.QueryString["path"] != null)
{
string imgUrl = context.Server.MapPath("~/" + context.Request.QueryString["path"]);

if (imgUrl.EndsWith("jpg"))
{
context.Response.ContentType = "image/jpeg";
context.Response.TransmitFile(imgUrl);
}
else if (imgUrl.EndsWith("gif"))
{
context.Response.ContentType = "image/gif";
context.Response.TransmitFile(imgUrl);
}
else if (imgUrl.EndsWith("png"))
{
context.Response.ContentType = "image/png";
context.Response.TransmitFile(imgUrl);
}
else
{
context.Response.Write("error");
}
}
}

public bool IsReusable
{
get
{
return false;
}
}
}

 Då kommer man kunna använda Image.ashx såhär: www.minsida.se/Image.ashx?path=bild.jpg

Kollade på senaste avsnittet av Ping - Channel9 och upptäckte detta: Office 2010 The Movie. Trailern eller vad man ska kalla den är väldigt snygg gjord. Värd att kolla på. Kräver att du har Silverlight installerat.

More Posts