<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>dattaproffs.se &#187; ASP.NET MVC</title>
	<atom:link href="http://dattaproffs.se/category/asp-net-mvc/feed/" rel="self" type="application/rss+xml" />
	<link>http://dattaproffs.se</link>
	<description>jQuery, xhtml, CSS, ASP.NET, Flash, Flex, Red5</description>
	<lastBuildDate>Wed, 26 Jan 2011 19:32:31 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1</generator>
		<item>
		<title>Telia beställer inte sina reservdelar på dustin</title>
		<link>http://dattaproffs.se/telia-bestaller-inte-sina-reservdelar-pa-dustin/</link>
		<comments>http://dattaproffs.se/telia-bestaller-inte-sina-reservdelar-pa-dustin/#comments</comments>
		<pubDate>Thu, 13 Aug 2009 19:49:00 +0000</pubDate>
		<dc:creator>Fredrik Berggren</dc:creator>
				<category><![CDATA[ASP.NET MVC]]></category>
		<category><![CDATA[felia]]></category>
		<category><![CDATA[telia]]></category>

		<guid isPermaLink="false">/post/2009/08/13/Telia-bestaller-inte-sina-reservdelar-pa-dustin.aspx</guid>
		<description><![CDATA[Då sitter man här igen med massor att göra, tyvärr kräver allt (nästan i alla fall) på listan att min internetuppkoppling är intakt. Som ni kanske förstår på denna post så är den _inte_ det, jag har länge varit trogen Telia av en enda anledning, pålitligheten. Alla mina kollegor och vänner har haft mycket problem ... <a href="http://dattaproffs.se/telia-bestaller-inte-sina-reservdelar-pa-dustin/">Continue Reading</a>]]></description>
			<content:encoded><![CDATA[<p><em>Då sitter man här igen med massor att göra, tyvärr kräver allt (nästan i alla fall) på listan att min internetuppkoppling är intakt.</em></p>
<p>Som ni kanske förstår på denna post så är den _inte_ det, jag har länge varit trogen Telia av en enda anledning, pålitligheten. Alla mina kollegor och vänner har haft mycket problem med sina internetleverantörer men mitt internet har tuggat på utan problem.</p>
<p>Men den här sommaren har varit katastrofal, vet inte hur många gånger jag varit i kontakt med Telias kundtjänst, visserligen är dom hyfsat trevliga men telefonkön har varit som kortast 30 min och som längst en timme och 30 minuter innan jag kom fram. Det intressanta är att oavsett vad som hänt så kommer det _alltid_ till samma slut, personen i kundtjänst frågar &#8220;kan det vara ditt modem som är trasigt?&#8221; VAD vill ni att jag ska svara på det? Det är klart det kan, men det är inte så troligt. Jag brukar oftast ställa motfrågan &#8220;kan det vara hos er det är fel?&#8221; och personen i andra änden svarar, ja det kan det.</p>
<p>Då har vi nåt ett så kallat dödläge och det slutgiltiga blir &#8220;kan du åka hem till en kompis och prova ditt modem&#8221;. Hittils denna sommar har jag provat mitt modem fyra gånger och det har inte en enda gång varit fel på det, jag ringer då upp igen och berättar att det fungerar fint, och då säger den nye handläggaren att det finns en känd, ja en KÄND driftstörning i mitt område. Detta har hänt VARJE gång mitt internet har gått ner, den första jag pratar med har ingen aning men andra gången jag ringer så vet personen att det är en känd driftstörning och den har varit planerad.</p>
<p>Jag blir fundersam, visste inte den förste personen detta? Jag ställer frågan och svaret är alltid detsamma, jo vi har samma system och ser samma saker. Då är frågan från mig till Telia, vill ni bara jävlas med mig ?</p>
<p>Varför ska jag:</p>
<p>1. koppla ur mitt modem</p>
<p>2. åka hem till en kompis</p>
<p>3. tvinga denne att koppla ur sitt modem</p>
<p>4. testa mitt modem och se att det fungerar</p>
<p>5. packa ihop mitt modem och koppla in min kompis modem igen</p>
<p>6. åka hem och ringa er igen</p>
<p>Allt detta trots att NI VET att det är en planerad driftstörning i mitt område! Som jag skrev tidigare så är mitt internet nere igen, denna gång är det dock inte något planerat fel, men samma procedur har skett. Just nu är det ett &#8220;kort i stationen&#8221; som ska bytas och detta skulle gjorts för tre dagar sedan, det hände int. Jag har varit i kontakt med kundtjänst varje dag och frågat vad som händer och nu har jag fått reda på att detta kort som ska bytas är beställningsvara och tiden när problemet ska vara avhjälp är bara vad dom tror. Det menas egentligen att dom chansar på en tid dagen efter och hoppas att delarna kommer, vilket dom inte gör.</p>
<p>Summa sumarum, Telia beställer inte sina delar på dustin för då hade jag kunnat slutföra mina uppgifter för flera dagar sedan.</p>
<p><strong>SKÄRPNING!</strong></p>
]]></content:encoded>
			<wfw:commentRss>http://dattaproffs.se/telia-bestaller-inte-sina-reservdelar-pa-dustin/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>OSAL Clothings webbshop slår upp portarna!</title>
		<link>http://dattaproffs.se/osal-clothings-webbshop-slar-upp-portarna/</link>
		<comments>http://dattaproffs.se/osal-clothings-webbshop-slar-upp-portarna/#comments</comments>
		<pubDate>Sun, 21 Jun 2009 21:16:00 +0000</pubDate>
		<dc:creator>Fredrik Berggren</dc:creator>
				<category><![CDATA[ASP.NET MVC]]></category>
		<category><![CDATA[OSAL Clothing]]></category>

		<guid isPermaLink="false">/post/2009/06/21/OSAL-Clothings-webbshop-slar-upp-portarna!.aspx</guid>
		<description><![CDATA[Då var det äntligen dags för OSAL Clothing att öppna upp sin webbshop, du hittar coola t-shirtar och tröjor med unika tryck. Som ett öppningserbjudande skeppas 20 t-shirtar iväg för endast 110 kr styck. Klicka här för me information.]]></description>
			<content:encoded><![CDATA[<p>Då var det äntligen dags för OSAL Clothing att öppna upp sin webbshop, du hittar coola t-shirtar och tröjor med unika tryck.</p>
<p>Som ett öppningserbjudande skeppas 20 t-shirtar iväg för endast 110 kr styck. <a title="OSAL Clothing" href="http://shop.osalclothing.se">Klicka här för me information</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://dattaproffs.se/osal-clothings-webbshop-slar-upp-portarna/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>ASP.NET MVC med LINQ TO SLQ, MySql databas och Repository Pattern</title>
		<link>http://dattaproffs.se/asp-net-mvc-med-linq-to-slq-mysql-databas-och-repository-pattern/</link>
		<comments>http://dattaproffs.se/asp-net-mvc-med-linq-to-slq-mysql-databas-och-repository-pattern/#comments</comments>
		<pubDate>Fri, 27 Mar 2009 21:13:00 +0000</pubDate>
		<dc:creator>Fredrik Berggren</dc:creator>
				<category><![CDATA[ASP.NET MVC]]></category>
		<category><![CDATA[LINQ]]></category>
		<category><![CDATA[MySQL]]></category>

		<guid isPermaLink="false">/post/2009/03/27/ASPNET-MVC-med-LINQ-TO-SLQ-MySql-databas-och-Repository-Pattern.aspx</guid>
		<description><![CDATA[Borta på aspsidan.se tjatar Mikael Söderström (Vimpyboy) hål i huvudet på alla folk med sitt &#8220;Gå över till ASP.NET&#8221;-tjat, nu har det även gått över till &#8220;Kör du ASP.NET WEB FORMS? Kör MVC istället&#8221; (okej inte riktigt så men det kommer) Jag beundrar Mikaels ork och jag skulle själv vilja orka tjata på folk sådär. ... <a href="http://dattaproffs.se/asp-net-mvc-med-linq-to-slq-mysql-databas-och-repository-pattern/">Continue Reading</a>]]></description>
			<content:encoded><![CDATA[<p>Borta på <a title="aspsidan.se" href="http://www.aspsidan.se" target="_blank">aspsidan.se</a> tjatar <a href="http://weblogs.asp.net/mikaelsoderstrom/default.aspx" target="_blank">Mikael Söderström</a> (Vimpyboy) hål i huvudet på alla folk med sitt &#8220;Gå över till ASP.NET&#8221;-tjat, nu har det även gått över till &#8220;Kör du ASP.NET WEB FORMS? Kör MVC istället&#8221; (okej inte riktigt så men det kommer) <img src='http://dattaproffs.se/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>Jag beundrar Mikaels ork och jag skulle själv vilja orka tjata på folk sådär. Men han har i alla fall fått mig att både gå till ASP.NET och nu även MVC, jag har precis börjat och det finns fortfarande en hel del frågor. Nästan alla tutorials, screencasts och artiklar handlar om MVC och MSSQL / SQLEXPRESS av förklarliga skäl, i stort sett alla använder också LINQ TO SQL och där kom mitt problem, jag kör till största delen MySql och det fungerar sådär med det sistnämda.</p>
<p>Vimpy gav mig nåt kort svar som följer här: &#8220;Antingen fixar du ett plugin till EF så att du kan köra MySQL, eller så kör du med en annan OR Mapper (t.ex. nHibernate), eller så skapar du bara egna klasser.&#8221;</p>
<p>Detta var nästan rena grekiskan för mig, jag hade fötterna i djupa gropar istället för startgropar. Men jag satte mig och började googla lite, och nu har jag löst det. har ingen aning om det är det bästa sättet eller ens ett bra sätt. men jag tänkte i alla fall beskriva hur jag gjorde och sen kan vi tillsammans gå vidare och göra det bättre/rätt.</p>
<p>För att kunna följa denna så förutsätter jag att ni vet hur man skapar en MySql databas, har MCV installerat och vet hur man skapar ett ASP.NET MVC projekt och har grundläggande förståelse om detta, jag kommer inte förklara MVC då jag knappt förstår det själv riktigt <img src='http://dattaproffs.se/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /> </p>
<h1>1 skapa databasen.</h1>
<p>Vi ska börja med att skapa databasen, en väldigt enkel databas med endast en tabell.</p>
<p><strong>Databasnamn:</strong> MVCTest</p>
<p><strong>Tabell:</strong> Products</p>
<p><strong>Kolumner:</strong> ID int Auto Inc, Title varchar(50), Description varchar(200)<br />
CREATE TABLE `mvctest`.`Products` (</p>
<p>`ID` INTEGER UNSIGNED NOT NULL AUTO_INCREMENT,</p>
<p>`Title` VARCHAR(50) NOT NULL,</p>
<p>`Description` VARCHAR(200) NOT NULL,</p>
<p>PRIMARY KEY (`ID`)</p>
<p>)</p>
<p>ENGINE = InnoDB;<br />
Släng in några dummyrader i databasen så vi har något att hämta ut senare.</p>
<h1>2 ladda ner DbLinq.</h1>
<p>Ladda ner <a href="http://code.google.com/p/dblinq2007/downloads/list" target="_blank">DbLinq</a> (jag använder DbLinq-0.18.zip) spara filen på lämpligt ställe och packa upp innehållet.</p>
<p>Dra igång kommandotolken (Start &gt; Kör &gt; cmd) och kör DbMetal.exe /conn:server=localhost;Port=3306;Database=mvctest;Uid=username;Pwd=password /provider: MySql /language:C#</p>
<p>Du måste såklart byta ut uppgifterna i connectionsträngen till de du använder.</p>
<p>Det som händer nu är att DbLinq loggar in och kollar igenom hur databasen du angav ser ut och skapar klasser i det programmeringsspråk du angav i &#8220;/language:&#8221;.</p>
<p>När filen är skapad så är det bara att hoppa vidare till steg 3!</p>
<h1>3 skapa ett MVC projekt.</h1>
<p>Öppna VS 2008, File &gt; New Project &gt; Visual C# &gt; Web &gt; ASP.NET MVC Web Application, ge den namnet MySqlMVC, jag väljer att skapa Unit Tests du kan ju välja själv <img src='http://dattaproffs.se/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>När projektet är skapat så måste vi börja med att lägga till lite referenser, högerklicka på <em>References</em> i Solution Explorer och välj <em>Add Reference&#8230;</em> klicka på fliken <em>Browse</em> bläddra fram till DbLinq mappen du packade upp i steg 2 och leta dig fram till mappen build, lägg till <em>DbLinq.dll</em>, <em>DbLinqMySql.dl</em>l och <em>MySql.Data.dll</em> (antingen använder du denna eller så använder du den senaste från myslq.com)</p>
<p>Vi fortsätter lägga till referenser men denna gång under fliken <em>.NET</em> leta på <em>System.Data.Linq</em> och lägg till även denna, så nu är vi klara med det.</p>
<p>Högerklicka på mappen Models och välj Add Existing Item, leta på filen som skapades i steg 2 mvctest.cs (ligger i build mappen) och lägg till den. Här måste vi göra lite ändringar och tillägg för att det ska fungera.</p>
<p><strong>Följande rader:</strong></p>
<p><span style="font-family: courier new,courier;">using DbLinq.Data.Linq;</span></p>
<p>using DbLinq.Linq;</p>
<p>using DbLinq.Linq.Mapping;</p>
<p><strong>Ska bytas mot:</strong></p>
<p><span style="font-family: courier new,courier;">using DbLinq.Data.Linq;</span></p>
<p>using DbLinq.Data.Linq.Mapping;</p>
<p>using System.Configuration;</p>
<p>using MySql.Data.MySqlClient;</p>
<p>Vi tar bort using DbLinq.Linq; och ändrar de två andra så de innehåller .Data.Linq; sen lägger vi även till System.Configuration; och Mysql.Data.MySqlClient;</p>
<p><strong>Leta sedan på följande rad: </strong></p>
<p><span style="font-family: courier new,courier;">public partial class MVCtEst : DbLinq.Data.Linq.DataContext</span></p>
<p><strong>och byt den mot: </strong></p>
<p><span style="font-family: courier new,courier;">public partial class MVCtEst : DbLinq.MySql.MySqlDataContext</span></p>
<p>detta gör att klassen ärver från MySqlDataContext, såklart för att vi kör mot MySql.</p>
<p><strong>Ta sedan bort de &#8220;konstruktorer&#8221; som skapas:</strong></p>
<p><span style="font-family: courier new,courier;"> public MVCtEst(System.Data.IDbConnection connection)</span></p>
<p>: base(connection, new DbLinq.MySql.MySqlVendor())</p>
<p>{</p>
<p>}</p>
<p><span style="font-family: courier new,courier;"> public MVCtEst(System.Data.IDbConnection connection, DbLinq.Vendor.IVendor vendor)</span></p>
<p>: base(connection, vendor)</p>
<p>{</p>
<p>}</p>
<p><strong>och lägg till denna istället:</strong></p>
<p><span style="font-family: courier new,courier;"> public MVCtEst()</span></p>
<p>:base(new MySqlConnection( ConfigurationManager.ConnectionStrings["ConnStr"].ConnectionString))</p>
<p>{</p>
<p>}</p>
<p>Öppna web.config filen i ditt projekt, och där lägger du till din connectionstring:</p>
<p>&lt;connectionstrings&gt;</p>
<p>&lt;clear/&gt;</p>
<p>&lt;add providerName=&#8221;MySqlProvider&#8221; name=&#8221;ConnStr&#8221; connectionString=&#8221;Server=localhost;Database=mvctest;Uid=username;Pwd=password&#8221;/&gt;</p>
<p>&lt;/connectionstrings&gt;</p>
<p>Så du var det klart att köra vidare till steg 4!</p>
<h1>4 skapa Repository Class.</h1>
<p>Det här kommer jag inte förklara nåt av, men anledningen till att man använder &#8220;Repository Pattern&#8221; är för att man ska kunna köra tester (Unit Tests) och för skalbarheten för framtiden.</p>
<p>Anledningen till att jag inte förklarar den grundligt att är att jag inte vet riktigt hur jag ska förklara det, men jag har använt följande källor för att få fram resultatet <a href="http://www.codeplex.com/nerddinner" target="_blank">NerdDinner</a> och <a href="http://www.asp.net/learn/mvc-videos/video-403.aspx" target="_blank">Stephen Walthers video.</a></p>
<p>Högerklicka på Models katalogen och välj Add &gt; Class, ge den namnet ProductsRepository.cs.</p>
<p><strong>Koden:</strong></p>
<p><span style="font-family: courier new,courier;">private mvctestDataContext db = new mvctestDataContext();</span></p>
<p><span style="font-family: courier new,courier;">public IQueryable&lt;Products&gt; GetAllProducts()</span></p>
<p>{</p>
<p>return db.Products;</p>
<p>}</p>
<p>Thats it.</p>
<h1>5 skapa ProductsController och View.</h1>
<p>För att kunna visa datan så måste vi ha en kontroller som returerar en View.</p>
<p>Börja med att lägga till <span style="font-family: courier new,courier;">using MySqlMVC.models;</span></p>
<p><strong>Koden:</strong></p>
<p><span style="font-family: courier new,courier;">ProductsRepository pRepository = new ProductsRepository();</span></p>
<p><span style="font-family: courier new,courier;">public ActionResult Index()</span></p>
<p>{</p>
<p>var products = pRepository.GetAllProducts().ToList();</p>
<p>return View(&#8220;Index&#8221;, products);</p>
<p>}</p>
<p>En lathund för att få fram en View som visar datan lite snabbt är att ställa dig efter ; (semikolonet) på raden <span style="font-family: courier new,courier;">return View(&#8220;Index&#8221;, products);</span> och högerklicka &gt; <em>Add view&#8230;</em> kryssa i <em>strongly-typed view</em> och i <em>View data class:</em> väljer du <em>Products</em> och i <em>View Content:</em> väljer du List, låt namet vara Index.</p>
<p>VS skapar då automagiskt en view som skriver ut datan.</p>
<h1>6 Kör projektet.</h1>
<p>Nu kan du trycka på f5 och köra ditt projekt, surfa sedan till /Projekts.</p>
<p>Nej men se på fan, där visas den dummydata du skrev in i databasen i punkt 1.</p>
<p>Kör gärna på i kommentarerna för att utveckla detta, var så säker att jag kommer fortsätta, detta helt ny intressant jaktmark för mig and i like it!</p>
]]></content:encoded>
			<wfw:commentRss>http://dattaproffs.se/asp-net-mvc-med-linq-to-slq-mysql-databas-och-repository-pattern/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>

