36 messaggi dal 13 marzo 2018
Salve,

sto creando un sito web con visual studio da caricare in seguito su un hosting a pagamento.
Ho creato la masterpage e le pagine ad esso collegate, che saranno le pagine del sito. In una di queste pagine deve esserci un'applicazione che esegue dei calcoli e restituisce il risultato all'utente. Questa applicazione l'ho sviluppata in c# in un altro progetto.

Il motivo per cui scrivo è che non so ora come collegare il progetto c# alla pagina web aspx su cui deve essere caricato.
Devo caricare il progetto il c# nella soluzione della pagina web? Se si, come? Che codice dovrei scrivere in seguito nella pagina aspx per fargli capire che deve eseguire l'applicazione?

Purtroppo non sono molto ferrato con visual studio, ma mi interesserebbe risolvere il problema. Sareste così gentili da scrivermi i passaggi o eventualmente gli argomenti che dovrei leggere per poter fare quello che ho scritto?

Ringrazio chiunque voglia rispondermi,

Ron
11.886 messaggi dal 09 febbraio 2002
Contributi
Ciao Ron e benvenuto nel forum!


Devo caricare il progetto il c# nella soluzione della pagina web?

Meglio di no, anche perché se pubblichi l'applicazione in hosting condiviso su Aruba poi non riuscirai a lanciare l'eseguibile. Esiste un modo migliore.
Nella stessa soluzione in cui hai il progetto web, aggiungi anche un altro progetto di tipo Class Library e inserisci in esso la classe (o le classi) che operano il calcolo. Si tratta delle stesse classi che in questo momento hai nel programma C#. Attenzione: io intendo solo le classi che contengono la logica di calcolo, e non le altre classi tipo Program che sono specifiche delle applicazioni Console.

Poi aggiungi un riferimento al progetto Class Library dal progetto web e cominci ad usarne le classi.
È tutto descritto passo-passo in questa pagina della documentazione.
https://msdn.microsoft.com/en-us/library/cc668164.aspx

Il programma C# che tipo di applicazione è? Un'applicazione console? Oppure Winforms o WPF?

ciao,
Moreno
Modificato da BrightSoul il 13 marzo 2018 18.21 -

Enjoy learning and just keep making
36 messaggi dal 13 marzo 2018
Ciao Moreno,

ti ringrazio per la tua gentile risposta.
L'applicazione è una winforms, essa è quindi di base costituita da:
nome progetto
program.cs (contiene il main che esegue il FORM)
form (cioé la parte fisica del progetto; qui si richiama alle classi di calcolo)
file di tipo c# (sono vari e contengono le classi di calcolo).

Diciamo che ho capito in linea di principio quello che dovrei fare secondo te, mi chiedo: quando vado ad inserire nel progetto di tipo Class Library (che aggiungerò al progetto web) le classi che operano il calcolo, mi è sembrato di intendere dalla tua risposta che non devo aggiungere il file pragram.cs che contiene il main, ma tutto il resto. Anche il form?
Quando aggiungo le classi devo togliere il riferimento al nomespace del progetto winforms di provenienza?
Come faccio a far comparire il form (così come l'ho realizzato) nella pagina aspx dedicata?

Ti ringrazio ancora per il tuo tempo,

Ron
11.886 messaggi dal 09 febbraio 2002
Contributi
Ciao Ron,


Anche il form?

No, il form non potrai riutilizzarlo. Dovrai ricreare le stesse interfacce usando le tecnologie del web, quindi HTML, CSS e javascript. Cogli l'opportunità per fare in modo che le interfacce siano responsive, cioè facilmente usabili anche da dispositivi mobile.

ciao,
Moreno

Enjoy learning and just keep making
36 messaggi dal 13 marzo 2018
Ciao Moreno,

ritorno da te con un'altra domanda.
Ho seguito la procedura che mi hai consigliato. Quindi ho creato una libreria di classi con i file c# che eseguono i calcoli della mia applicazione e ora sto cercando di ricreare la logica del Form nella pagina aspx in modalità progettazione.
Rispetto al Windows Form però nella toolbox della pagina aspx non mi ritrovo gli stessi strumenti (come ad esempio OpenfileDialog) e quindi il codice che avevo scritto per il controllo dello strumento non riesco ad utilizzarlo. Ho anche inserito nel codice .cs della pagina aspx "using System.Windows.Forms" (con annesso aggiungi riferimento) ma non mi fa utilizzare né i tools né i metodi di Windows Forms.

Sapresti dirmi come posso procedere?
Come sempre ti ringrazio,

Ron
11.886 messaggi dal 09 febbraio 2002
Contributi
Ciao,


Ho anche inserito nel codice .cs della pagina aspx "using System.Windows.Forms" (con annesso aggiungi riferimento) ma non mi fa utilizzare né i tools né i metodi di Windows Forms.

È normale: i controlli che appartengono al namespace System.Windows.Forms possono essere usati solo per applicazioni per il desktop di Windows.

L'applicazione ASP.NET che stai realizzando, invece, usa gli standard del web e può essere visualizzata su qualsiasi piattaforma grazie a un browser.

Quindi, non potendo riutilizzare la OpenFileDialog, devi trovare un altro controllo di ASP.NET WebForms che abbia uno scopo simile. Questo controllo è FileUpload che trovi documentato qui:
http://asp.net-tutorials.com/controls/file-upload-control/
https://www.codeproject.com/Articles/1757/File-Upload-with-ASP-NET
https://www.youtube.com/watch?v=irF6Zomjxwc

ciao,
Moreno

Enjoy learning and just keep making

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.