login  Naam:   Wachtwoord: 
Registreer je!
 Forum

ophalen posted-file

Offline Wijnand - 22/02/2007 10:23
Avatar van WijnandModerator Hallo.. ik werk op dit moment met ASP.NET wat best grappig is allemaal. Maar nu moet ik werken in een code met een bepaalde style, waardoor er een error ontstaat. Het wijzigen van die "style" is geen optie.

Maar goed.. ik heb dus een functie die er zo ongeveer uit ziet:

Citaat:
function new_item()
if request.form("submit") <> "" then
' verwerking
else
' formulier zoals: <form runat="server" enctype="multipart/form-data"><input type="file" name="document" /><input type="submit" name="submit" value="submit" /></form>
end if
end function


nou dat werkt op zich wel.. maar dan bij verwerking heb ik het volgende:

Citaat:
Dim uploadedFile As new FileUpload
uploadedFile = Page.FindControl("document")
If Not (uploadedFile.PostedFile Is Nothing) Then
Dim postedFile = uploadedFile.PostedFile
Dim filename As String = postedFile.GetFileName(postedFile.FileName)
Dim contentType As String = postedFile.ContentType
Dim contentLength As Integer = postedFile.ContentLength
Dim imageBytes(contentLength) As Byte
PostedFile.InputStream.Read(imageBytes, 0, contentLength)



En dan gooi ik imageBytes in de database.

Maar nu krijg ik een error namelijk:
System.NullReferenceException: Object reference not set to an instance of an object.

op deze regel:
If Not (uploadedFile.PostedFile Is Nothing) Then

Wat ik denk dat het probleem is, is dat uploadedFile niet echt een object is of dat hij geen waarde heeft. Hoe kan ik deze error oplossen?

mvg,
Wijnand

4 antwoorden

Gesponsorde links
Offline Thomas - 22/02/2007 12:56
Avatar van Thomas Moderator Kun je iets Dim-men als object? Moet dat niet zoiets zijn als
Set Obj = Server.CreateObject("Scripting.FileSystemObject")

Zo moet het iig (ongeveer) in oldschool-ASP.

Daarnaast staat dat runat="server" nogal raar. Een client vult het formulier toch in en verstuurt deze? Er hoeft daarvoor niets op / aan de serverkant te draaien? De verwerking van het formulier gebeurt aan de serverkant.
Offline Abbas - 22/02/2007 13:38
Avatar van Abbas Gouden medaille

Crew .NET
Fangorn, ik snap je punt, maar bij alle .NET - tags (of toch zo goed als alle) komt er het stukje -runat="server"- bij. Om bvb een .NET formulier met 2 tekstvakken en een knop te kunnen verwerken, moet de form-tag ook runat="server" bevatten...

@Wijnand: staat de FileUpload bij het laden al op de pagina of creëer je deze zelf 'hard-coded'?
Offline Wijnand - 22/02/2007 14:13
Avatar van Wijnand Moderator @titjes, ik neem aan dat ik hem hard-coded creëer....

en het voorbeeld op zich laat iig mijn denk/werkwijze zien neem ik aan?

@fangorn, asp.net heeft een aantal grote veranderingen ten op zichte van asp... en dit is er één van. "set obj =" wordt niet meer gebruikt.
Het probleem is niet zozeer dat de server-kant niet werkt, maar (denk ik) dat hij uploadFile niet vult of niet het juiste type maakt (denk ik)...

maar ik loop hier al een tijd tegenaan te hikken en zou eens blij zijn als hij opgelost wordt.
Offline Abbas - 22/02/2007 15:38
Avatar van Abbas Gouden medaille

Crew .NET
Inderdaad,
laat anders eens wat meer code zien, dan begrijp ik je bedoeling beter en kan ik meer hulp bieden... 
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.181s