webForumDet fria alternativet
Logga in / Bli medlem

Bra kod?

.NET

2 svar · 247 visningar · startad av Crim

Medlem sedan juni 200233 inlägg
Frågan#1

hmm, stött på en skum grej; när jag, via en browser, går in på min sida så ser allt bra ut men när jag sedan precis efter går in på ftp:n så e databasen öppnad och därmed skrivskyddad :/ går inte att göra nånting med den...

så här ser koden ut:
Sidan.aspx

<%@ Page Language="VB" %>

<%@ Import Namespace="System.data" %>
<%@ Import Namespace="System.Data.OleDb" %>

<script runat="server">

Sub Page_Load(sender as object, e as eventargs)
Dim objForum as new Guardian.Show
Dim objReader = objForum.VisaAllt
dlItems.DataSource = objReader
dlItems.Databind()
objReader.Close
End Sub

</script>

<html><body>
<form runat="server">
<asp:DataGrid id="dlItems" runat="server"
BorderColor="black"
GridLines="vertical"
Cellpadding="4"
Cellspacing="0"
Width="450"
Font-Names="Arial"
Font-Size="8pt"
ShowFooter="true"
HeaderStyle-BackColor="#cccc99"
FooterStyle-BackColor="#cccc99"
ItemStyle-BackColor="#ffffff"
AlternatingItemStyle-BackColor="#cccccc"
AutoGenerateColumns="False">

<Columns>

<asp:TemplateColumn HeaderText="Avsändare">
<ItemTemplate>
<asp:Label id="Avsändare" runat="server" Text='<%# Container.DataItem("Author") %>' />
</ItemTemplate>
</asp:TemplateColumn>

<asp:BoundColumn HeaderText="Meddelande" DataField="Message" />

<asp:BoundColumn HeaderText="Tid" DataField="Date" />

</Columns>

</asp:DataGrid>
</form>
</body></html>

Affärsobjektet

Imports System
Imports System.Data
Imports System.Data.OleDb

Namespace Guardian

Public Class Show
private objConn As New OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\Inetpub\wwwroot\chaos\aspx\project\fortress.mdb")

Public function VisaAllt as OleDbDataReader
Dim objReader as OleDbDataReader

Dim objCmd as new OleDbCommand("qVisaAllt", objConn)
objCmd.CommandType = CommandType.StoredProcedure

try
objCmd.Connection.Open()
objReader = objCmd.ExecuteReader
return objReader
objCmd.Connection.Close
catch e as Exception
throw e
End Try

End function
End Class
End Namespace

Medlem sedan apr. 20007 588 inlägg
#2

Du stänger objCmd efter return-satsen vilket får till följd att den aldrig exekveras, antagligen så stängs inte din databaskoppling ned.

Medlem sedan dec. 19995 874 inlägg
#3

Access skapar en fortress.ldb och dess uppgift är att hålla reda på postlåsningar i databasen. Då databasen används är det även naturligt att den är skrivskyddad.
Det du kan göra är att du gör en kopia på den och arbetar med den, alternativt döper om den.

257 ms totalt · 4 externa anrop · v20260731065814-full.0bc6e834
129 ms — deklarationer (db)
0 ms — hämta statistik (cache)
126 ms — hämta tråd, inlägg och bilagor (db)
117 ms — ändringar (db)