Prevedo un topic di 10 pagine. Ti aiutiamo volentieri ma inizia a postare il codice completo. Possibilmente separa l'html dal code behind...(aspx da vb) altrimenti è ancora + difficile.

Per ridimensionare (in c# poi lo traduci):
...
if (!File.Exists(path))
{
FileStream file = new FileStream(path, FileMode.Open);
ResizeAndSave(file, "600", "400", path);
file.Close();
}
...

private void ResizeAndSave(Stream imgStr, int w, int h, string fileName)
{
System.Drawing.Image bmpStream = System.Drawing.Image.FromStream(imgStr);
Bitmap img = new Bitmap(bmpStream, new Size(w, h));
img.Save(fileName);
}


600 e 400 sono width e heigth
Ovviamente in questo modo non sai che cosa si vedrà dell'immagine...Magari ti esce l'angolino bianco in alto...
Modificato da manuel0081 il 29 agosto 2008 09.16 -
Modificato da manuel0081 il 29 agosto 2008 09.16 -

Ormai programmano tutti... ma la professionalità appartiene a pochi
21 messaggi dal 13 agosto 2008
Ciao Rivettazzo!
anche a me hanno dato una lavata di capo tempo fa per scopi molto meno aziendali di te...(della serie "scusi, per un comprare una scatola di fiammiferi per accendermi una sigaretta, dove mi devo recare?" "Si compri il Tom TOm e impari da usarlo!")

quindi, passetto passetto mim sono imbattuto in questa pagina per iniziare in .NET
http://msdn.microsoft.com/it-it/library/k4cbh4dh(printer).aspx
e da lì mi sono allargato ad altre

good lucky


vecchiogillo ha scritto:
questa pagina per iniziare in .NET
http://msdn.microsoft.com/it-it/library/k4cbh4dh(printer).aspx
e da lì mi sono allargato ad altre

Scusa ma non è quello che ti (vi) era stato suggerito, ovvero *studiare*?
Ad ogni modo abbandono definitivamente questa sterile polemica.
Buon lavoro, comunque decidiate di farlo.

Matteo Casati
GURU4.net
751 messaggi dal 03 maggio 2002
www.albain.com
Ma appunto, non serve a niente fare polemiche. Per studiare, ci vuole del tempo. Ci sono 10ne di siti non funzionanti, non c'è tempo per fare polemiche.

Cmq, vorrei farvi vedere come un utente che non ha voglia di fare polemiche, ma realmente risolvere un URGENTISSIMO problema (scopo del forum è quello di aiutare, risolvere o non rispondere) mi ha consigliato di fare, risolvendo tutto il problema, che non è imparare ASP.NET, ma trovare un metodo per caricare e ridimensionare le immagini:
----
Prima cosa: asp.net non è poi così impossibile. Proprio come in asp classico puoi continuare a scrivere le tue pagine con blocco note. Non è richiesto nè Visual Web Developer nè la compilazione delle pagine. Tu devi scrivere solo 1 pagina con poche righe, non c'è bisogno di complicarsi la vita. Io ti consiglio di aprire blocco note e creare una pagina chiamata upload.aspx. Ci scrivi dentro un po' di codice e la pubblichi sul server in una cartella qualsiasi, magari nella stessa cartella in cui si trova la pagina asp classico contenente il form. Non c'è bisogno che metti la pagina aspx dentro /bin.

Allora, presumo che nella pagina scritta in asp classico tu abbia un form tipo questo, con un campo "file":

<form action="upload.aspx" method="POST" enctype="multipart/form-data">
<input type="file" name="file">
<br>
<input type="submit">
</form>

nota come nella action del form ho messo upload.aspx; questa pagina avrà lo scopo di raccogliere il file e ridimensionarlo.
Dentro upload.aspx mettici questo:

<%@ Page validateRequest="false" %>
<%@ Import Namespace="System.Drawing" %>
<script language="C#" runat="server">
void Page_Load(){
if (Request.Files.Count > 0)
{
try
{
int larghezza = 200;
int altezza = 180;
string nomefile = "/cartella/nomefile.jpg";

System.Drawing.Image immagine = System.Drawing.Image.FromStream(Request.Files[0].InputStream);
Bitmap bmp = new Bitmap(larghezza, altezza);
Graphics g = Graphics.FromImage(bmp);
if ((immagine.Height != altezza) || (immagine.Width != larghezza))
{
g.InterpolationMode = System.Drawing.Drawing2D.InterpolationMode.HighQualityBicubic;
}
g.DrawImage(immagine, new Rectangle(0, 0, larghezza, altezza), new Rectangle(0, 0, immagine.Width, immagine.Height), GraphicsUnit.Pixel);
bmp.Save(Server.MapPath(nomefile), System.Drawing.Imaging.ImageFormat.Jpeg);
immagine.Dispose();
bmp.Dispose();
}
catch
{
}

}
}
</script>

e basta. Devi solo configurare la dimensione e il percorso dell'immagine finale, che sono quelle 3 linee evidenziate.

PROBLEMA RISOLTO, grazie mille a tutti
Modificato da Rivettazzo il 29 agosto 2008 14.42 -

 Tutto si può fare, quando si stà per affogare si impara a nuotare
Rivettazzo wrote:
Ma appunto, non serve a niente fare polemiche. Per studiare, ci vuole del tempo. Ci sono 10ne di siti non funzionanti, non c'è tempo per fare polemiche.

quando mi chiedono di fare qualcosa che non so fare, generalmente evito di farla. lo so che non è una risposta al tuo problema, ma l'atteggiamento comune che un forum o un newsgroup siano un posto dove la gente fa i compiti al posto di altri credo sia abbastanza sbagliato. aiutarsi un conto, pretendere tutto pronto è un altro.

capisco l'urgenza ed è per questo che, se vuoi essere certo di fare un lavoro a norma, pagare qualcun'altro che sappia come viene fatto non è un'idea da buttare.
il codice che hai incollato mette i brividi, perchè di fatto consente di fare l'upload di qualsiasi cosa, anche uno script, su qualsiasi percorso, visto che il nome del file sono certo che l'andrai a prendere dalla form e non farai nessun controllo sui dati inseriti... il punto è che non ci si improvvisa, ma questo è un discorso generale per il futuro, visto che il problema contingente credo tu l'abbia risolto.

se ci sono ancora oggi, nel 2008, worm che bucano con tentativi del piffero un database è perchè la cultura del cut&paste e del provare per tentativi è ancora, purtroppo, quella predominante. l'importante è poi non lamentarsi se un intero settore ne viene sminuito, perchè ce la siamo cercati tutti. e ribadisco il fatto che ASP.NET non è qualcosa che si "fa" per tentativi.
PROBLEMA RISOLTO, grazie mille a tutti

e quando ti chiederanno una modifica?

Daniele Bochicchio | ASPItalia.com | Libri
Chief Operating Officer@iCubed
Microsoft Regional Director & MVP
751 messaggi dal 03 maggio 2002
www.albain.com
Quando mi chiederanno una modifica, chiederò o su questo Forum (in 5 o 6 anni, sono innumerevoli i problemi che sono stati risolti qui) ma so già che non sarà necessaria... Perchè io ho bisogno di fare Upload e Ridimensione e basta...

Per quanto riguarda il controllo di un estensione, è una cosa così difficile? Io ad esempio adesso mi creerò una copia su server del file, ne farò un thumbnail e molte altre cose, ma non sono stato a chiedere perchè ripeto, una volta che so che funziona, il codice posso cambiarlo e ricambiarlo migliaia di volte, cercando in internet, chiedendo a voi...

E cmq, nessuno vuole la pappa già pronta, ho scritto (qualsiasi dritta o consiglio utile è ben accetto). In un Forum, gli utenti possono aiutare nel modo che vogliono, ci si confronta, ci si aiuta, ci si possono anche scambiare consigli e/o file, nessuno viene pagato ne chiede soldi ma lo fa perchè gli va di aiutare. Il modo più semplice per non dare la pappa pronta è fare finta di non leggere neanche il post. Non si è obbligati certamente a rispondere.

Dai ragazzi, il mio problema non era certamente il codice (semplicissimo), ma l'ambiente che ovviamente non avevo mai visto. E avevo urgente bisogno di far funzionare le cose non certamente di mettermi a sviluppare applicazioni in ASP.NET

Adesso, a problema risolto, posso tranquillamente comprarmi il libro leggermelo e imparare, se possibile...

Il codice che ho postato, mi è stato inviato dopo pochissimo dalla richiesta privata via mail ad un utente del forum, magari non sarà ricco di chissà quali accortezze, ma mi ha risolto tutti i problemi e subito. Se adesso gli utenti vogliono parlarne e implementarlo ed esprimere opinioni, ben venga avremo tutti creato qualcosa di estremamente costruttivo.

In definitiva, grazie come sempre alla Community e scusatemi per il polverone che si è venuto a creare... Non era mia intenzione disturbare. Quindi, per iniziare a lavorare in ASP.NET, quali passi mi consigliate? Un libro come prima cosa?

 Tutto si può fare, quando si stà per affogare si impara a nuotare
Quoto Daniele al 99%
Come giustamente faceva notare in un altro 3d analogo c'è gente (lui in primis) che lavora su ASP.NET da 7 (sette!) anni e si ritiene ancora agli inizi (ed è così!)
Forse prima di sputare sui consigli ricevuti da queste persone è bene contare almeno fino a 10...

Volevo soffermarmi su un altro punto (è giusto per amore di discussione):
se ci sono ancora oggi, nel 2008, worm che bucano con tentativi del piffero un database è perchè la cultura del cut&paste e del provare per tentativi è ancora, purtroppo, quella predominante.

Niente di più vero. Purtroppo.

l'importante è poi non lamentarsi se un intero settore ne viene sminuito, perchè ce la siamo cercati tutti.

Questo è l'unico punto su cui dissento leggermente: non ce la siamo cercata *tutti*. All'inizio dell'era di internet la sicurezza e la qualità non erano un aspetto fondamentale (anzi!) ma, all'epoca, andava bene così.
Poi però hanno iniziato a girare interessi (e soldi) e sono arrivati i problemi che ben conosciamo.
La differenza è che qualcuno si è "sbattuto" per migliorare (pochi) mentre altri (tanti) hanno continuato sulla strada del "basta che funzionicchia".
Forse è il caso di iniziare a misurare la professionalità perché, se permettete, davanti a certi atteggiamenti, inizio a prendermela a livello personale... Finché scrivi codice che fa schifo ma fai del male solo a te stesso (o al tuo cliente) sono affari tuoi, però - quando il proliferare di questo modus operandi getta fango sull'intera categoria e genera sfiducia nel media - allora i tuoi errori ricadono anche su di me. E non mi sta bene.

Matteo Casati
GURU4.net
Rivettazzo wrote:
Adesso, a problema risolto, posso tranquillamente comprarmi il libro leggermelo e imparare, se possibile...

infatti, lo ribadisco come l'ha già detto anche Matteo, che è un discorso generico, non rivolto a te. perchè improvvisando le cose la qualità ne risente sempre.

In definitiva, grazie come sempre alla Community e scusatemi per il polverone che si è venuto a creare... Non era mia intenzione disturbare. Quindi, per iniziare a lavorare in ASP.NET, quali passi mi consigliate? Un libro come prima cosa?

se n'è parlato tante volte. secondo me il modo giusto per imparare è questo: - Object Oriented Programming
- .NET Framework
- C# e VB
- ASP.NET

è un percorso che richiede molto studio, ma che da' tante soddisfazioni, perchè con ASP.NET puoi fare applicazioni, anzichè copia ed incolla di script. e l'OOP è un'altra cosa. il problema è che approcci diversi da questo difficilmente pagano ed è utile dimenticarsi come si fanno le cose con ASP, perchè non sono paragonabili. in bocca al lupo

Daniele Bochicchio | ASPItalia.com | Libri
Chief Operating Officer@iCubed
Microsoft Regional Director & MVP

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.