webForumDet fria alternativet

PostedFileContentLength

19 svar · 345 visningar · startad av Nickemannen

NickemannenMedlem sedan aug. 20003 575 inlägg
#1

När jag använder

PostedFile.ContentLength och det är förstora filer så får jag bara

Sidan kunde inte visas

Jag använder tillsätter den Long och även om jag skipper Long
och bara vill skriva ut det går det inte.

hur skall jag lösa det

Meningen är att jag skall kunna bestämma hur stora filer man skall kunna få ladda upp

renholmMedlem sedan apr. 20012 266 inlägg
#2

Hum, finns en spärr som inte tillåter request över 4 mb tror jag.
något sådant du är ute efter att få bort?

NickemannenMedlem sedan aug. 20003 575 inlägg
#3

Ja, men hur skall man kunna kolla om filen är över 4 Mb och sedan ge ett svar att det inte gick att ladda upp mer än 4 mb ?

NETworkMedlem sedan juni 20011 732 inlägg
#4
int Size = UploadFile.PostedFile.ContentLength;
if (Size > 4194314) {
  return;
}
NickemannenMedlem sedan aug. 20003 575 inlägg
#5

hmm, nu är jag inte hemma men

int Size = UploadFile.PostedFile.ContentLength;

krashade när filen var mer än 4 Mb.

Eller om den krashade innan den när jag kollade om det fanns något värde överhuvudtaget i UploadFile.PostedFile

jag fick en helt vanlig sidan kan inte visas sida.

Möjligen om det var ngt fel det kanske går om jag testar att starta om datorn hemma och prövar det igen.

NickemannenMedlem sedan aug. 20003 575 inlägg
#6

denna
UploadFile.PostedFile.ContentLength;

kodraden pajar mitt script och alla andra med Postedfile om
det är över 4 MB hur skall jag kunna kontrollera det innan den
skickar det ?

renholmMedlem sedan apr. 20012 266 inlägg
#7

Tror det nog är IIS som pajar ditt script eftersom den inte tillåter requests på över 4 mb.

Hoppas jag förståt problemet rätt =)

NickemannenMedlem sedan aug. 20003 575 inlägg
#8

ja, men hur skall man gå runt det ?

renholmMedlem sedan apr. 20012 266 inlägg
#9

Öka gränsen i IIS men det låter inte som något riktigt bra lösning. Kan du ge felmeddelandet mer i detalj, "Sidan kunde inte visas" kommer man inte långt med.

NickemannenMedlem sedan aug. 20003 575 inlägg
#10

det är det ända som kommer upp.. annars så borde det ju ha kommit upp ett .NET felmeddelande men nu blir det bara så

juventus1Medlem sedan dec. 2000399 inlägg
#11

Klicka bort "Show friendly HTTP error messages" i Internet Explorer så borde du få ett vettigare meddelande.

NickemannenMedlem sedan aug. 20003 575 inlägg
#12

det är borta.

Jag får ändå denna sida

renholmMedlem sedan apr. 20012 266 inlägg
#13

Något fel msg i Event Viewer då?

NickemannenMedlem sedan aug. 20003 575 inlägg
#14

menar du

try {koden }
catch (Exeption E)
{}

så blir det samma..

renholmMedlem sedan apr. 20012 266 inlägg
#15

menar inte det, jag menar att du ska kolla i loggen på webservern för att kontrollera det exakta felet.

Start->Settings->Control Panel->Administrative Tools->Event Viewer

NickemannenMedlem sedan aug. 20003 575 inlägg
#16

får inte upp något felmeddelande där heller.

testa själv fungerar det för er att kolla storleken på en förstor fil ?

finns det något sätt att kolla hur stor filen är hos klienten istället för servern ?

NickemannenMedlem sedan aug. 20003 575 inlägg
#17

Löste det för längesedan genom att ändra denna
i machine.config

<httpRuntime executionTimeout="90" maxRequestLength="14096" useFullyQualifiedRedirectUrl="false" minFreeThreads="8" minLocalRequestFreeThreads="4" appRequestQueueLimit="100"/>

renholmMedlem sedan apr. 20012 266 inlägg
#18

Men detta kan öppna upp för överbelastningsattacker och dyl. Spärren är satt på 4mb för att motverka sådant.

NickemannenMedlem sedan aug. 20003 575 inlägg
#19

Visserligen, men måste man kunna få upp 10 MB så måste man ändra den. Andra sättet hade ju varit att bygga en webbaserad ftp som inte är så svårt men tidskrävande

kristofferMedlem sedan juni 20001 257 inlägg
138 ms totalt · 3 externa anrop · v20260731065814-full.beb2e261
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
136 ms — hämta tråd, inlägg och bilagor (db)