Är ny på det här med .NET och försöker nu göra en databaskoppling samt hämta ut informationen i databasen och lista den på en aspx sida. Så här långt (kort) har jag kommit nu:
<%@ Page Language="VB" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="sv" lang="sv">
<head>
<title>Fredriks bilder</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
</head>
<%
Dim myConnection As New MySql.Data.MySqlClient.MySqlConnection("server=x; uid=xxx; pwd=yyy; database=zzz;")
Dim strSQL As String = "SELECT ID, Titel, Katalog, Datum, Fotograf FROM tblAlbum ORDER BY Datum DESC, Katalog DESC"
Try
myConnection.Open()
Catch ex As MySql.Data.MySqlClient.MySqlException
response.write (ex.Message)
End Try
%>
Jag har sökt runt lite och jag tror att jag behöver någon form av adapter och sen ska jag med hjälp av Fill fylla ett dataset med informationen. sen kan jag stänga kopplingen till databasen och ta hand om informationen. Stämmer detta?
Mitt stora problem är att jag inte vet hur detta ska göras. I alla exempel jag hittar så används ODBC kopplingar till databasen (och till adaptern), men det gör ju inte jag?
Du måste nog gå igenom grunden, om du är nybörjare. Så som du gör är inte helt bra.
Du kan inte tänka gammal ASP. Lägg din kod i en codefile i ex. Page_load och fyll ett dataset. Sen så kan du använda ditta dataset att binda till ex. en gridview.
tack för dina kommentarer, jag ska kolla på det. Har bläddrat i flera böcker och kollat runt på nätet. Får dock alltid problem med att de alltid är generella beskrivningar och exempel som inte passar i mitt fall. Hade därför hoppats på att ialla fall få ihop en kod som fungerat och sen fortsätta läsningen.
Alla måste vi börja någonstans och du är helt fel ute. Om du är otålig till naturen så kommer du få svårt att göra någonting vettigt i .NET.
Det är fruktansvärt stort och om du inte lär dig rätt från början är det nog bättre du ser dig om efter något annat ramverk att utveckla i.
Det finns en anledning att det är generellt! Titta gärna på microsofts dra&släpp lösningar som SqlDataSource, ObjectDataSource, AccessDataSource för att komma vidare. Mycket bra läsning finns på ASP.NET där de har Video tutorials för den som inte orkar läsa själv. http://www.asp.net/learn
Jag har fortsatt läsa och jag har nu fått fram en fungerade kod som gör det jag ville. Skulle önska att ni tittar på den och ser om det är något jag gör fel nu. Om detta är rätt kommer jag gå och låna om de där ASP.NET böckerna och läsa från grunden, jag ville bara få en liten kick-start :)
tack!
<%@ Page Language="VB" Debug="true" %>
<%@ Import Namespace="System.Data" %>
<%@ Import Namespace="MySql.Data.MySqlClient" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="sv" lang="sv">
<script language="VB" runat="server">
Sub Page_Load(ByVal Sender As Object, ByVal ea As EventArgs)
Dim myConnection As New MySqlConnection("server=xxxxx; uid=xxxx; pwd=xxx; database=xx;")
Dim myCommand As New MySqlCommand()
Dim myDataAdapter As New MySqlDataAdapter()
Dim myDataSet As New DataSet()
Dim myDataView As New DataView()
myCommand.Connection = myConnection
myCommand.CommandText = "SELECT ID, Titel, Datum, Fotograf FROM tblAlbum ORDER BY Datum DESC, Katalog DESC"
Try
myConnection.Open()
myDataAdapter.SelectCommand = myCommand
myDataAdapter.Fill(myDataSet)
myConnection.Close()
myDataList.DataSource = myDataSet
myDataList.DataBind()
Catch ex As MySqlException
Select ex.Number
Case 0
Response.Write("Cannot connect to server. Contact administrator")
Case 1045
Response.Write("Invalid username/password, please try again")
End Select
End Try
End Sub
</script>
<head>
<title>Fredriks bilder</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<meta name="robots" content="noindex, nofollow">
<link rel="stylesheet" href="style/style.css" type="text/css" />
</head>
<body id="albumsida">
<div class="album"><b>Album</b></div>
<div class="datum"><b>Datum</b></div>
<div class="fotograf"><b>Fotograf</b></div>
<ASP:Repeater id="myDataList" runat="server">
<ItemTemplate>
<div class="album"><a target="_blank" href="visa.aspx?AlbumID=<%# DataBinder.Eval(Container.DataItem, "ID") %>"><%# DataBinder.Eval(Container.DataItem, "Titel")%></a></div>
<div class="datum"><%# DataBinder.Eval(Container.DataItem, "Datum") %></div>
<div class="fotograf"><%# DataBinder.Eval(Container.DataItem, "Fotograf")%><br /></div>
</ItemTemplate>
</ASP:Repeater>
</body>
</html>
Är det en flash applikation på en .NET site? Hur kan man vara så "otrogen" mot stackars Microsoft, givetviss måste den skrivas om till en silverlight-version, där du kan använda din .NET kunskaper och WPF ;)
Är det en flash applikation på en .NET site? Hur kan man vara så "otrogen" mot stackars Microsoft, givetviss måste den skrivas om till en silverlight-version, där du kan använda din .NET kunskaper och WPF ;)
- M
hehe, tyckte bara det var en snygg flash visning av bilderna, och att sätta mig och koda en sådan varken jag kan eller har jag tid med. Men om du gör en så skriver jag gladeligen ett långt tacktal till dig på sidan :)
Travoni skrev:
Datavyn kan du ta bort eftersom den aldrig används.
Dim myDataView As New DataView()
Annars så ser det väl ok ut.