Visualizzazione dei risultati da 1 a 7 su 7
  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2008
    Messaggi
    14

    Aiuto: dati SQL server, accesso dati con ObjectDataSource...

    Ciao a tutti,
    ho sempre lavorato benissimo con ASP classic, ho iniziato più volte la migrazione ma ad un nuovo progetto non riesco a passare ad asp.net perchè lo trovo molto articolato. E' vero che se si usano i controlli pronti qualcosa si fa, ma trovo molto difficile replicare cose che con ASP classic faccio in 10 minuti.

    Per esempio il tipo di accesso ai dati a SQL server: è vero che c'è sqldatasource bellepronto ma leggendo qua e la tutti lo sconsigliano... bene, allora provo con l'objectdatasource... qui iniziano i dolori, non lo capisco e per estrarre un record lo trovo lungo e complicato (dal, bll, ho seguito asp.net ma che casino) sarò io che non sono ancora "entrato con la testa" ma c'è qualcuno che mi affianca per fare una piccola applicazione a tre livelli? (tipo 1 tabella con 2 colonne e 2 paginette asp.net che leggono/scrivono/cancellano/modificano)

    C'è qualcuno che ha qualche minuto da dedicarmi?
    Grazie per l'attenzione.
    Ciaociao
    Fabrizio

  2. #2
    Perche sconsigliano SqlDataSource??
    Anche io un annetto fà passai da Asp ad ASP.NET
    Il problema è che pretendi di fare le cose in .net come le fai per asp classic
    senza contare che il 90% della gente che posta qui lo fà cercando di programmare
    asp.net senza aver letto manco mezzo libro sull'argomento
    Cmq per fare le cose che vuoi fare tu non servono due pagine, lo fai con una sola

    Metti nella pagina un bel sqldatasource, imposti le query che ti servono:
    selectcommand, insertcommand, updatecommand, deletecommand

    poi credi un gridview che ti recupera i dati...
    forse nn ci crederai ma basta che imposti l'attributo DataSourceID="nome del SQLDataSource"
    e visualizzazione, cancellazione, inserimento ecc.. li fa tutti in automatico e ti porta
    via meno di 5 minuti per fare tutto ciò

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2008
    Messaggi
    14
    Ciao,
    grazie per l'attenzione...
    Si con sqldatasource tutto è più semplice, ma da quello che ho trovato in giro è una soluzione poco consigliata perchè le query poi si trovano intasate nel codice, questo rende più difficile la manutenzione futura, ti passo una reference dal sito microsoft (http://www.microsoft.com/italy/msdn/...atasource.mspx)

    Mi piacerebbe capire meglio la struttura a 3 livelli e quindi poi usare objectdatasource.
    C'è qualcuno qui lo utilizza? Mi aiutate?
    Grazie e ciao
    Fabrizio

  4. #4
    Utente di HTML.it
    Registrato dal
    Feb 2008
    Messaggi
    1
    Ciao Fabx75,
    la struttura multistrato è senza dubbio più pulita, scalabile e maggiormente manutenibile.
    La struttura a 3 livelli si compone di
    - DataLayer
    - BusinessLayer
    - PresentationLayer

    Il 1° contiene semplicemente i dataset nel quale sono definiti i metodi da eseguire sulle tabelle, per un maggiore isolamento sarebbe ancora meglio impostare i metodi dei dataset inmodo che si riferiscano a storedprocedures piuttosto che inserire le query direttamente nell'xsd, sempre per un discorso di scalabilità e manutenibilità

    Il 2° è la parte diciamo "logica" quella cioè all'interno della quale sono definite le regole secondo cui ragiona l'applicazione

    il 3° sono le pagine .aspx

    Questi livelli possono comunicare con loro fondamentalmente secondo 2 tecniche:
    - Remoting
    - WebServices

    La 1°a è senza dubbio più veloce, ma implica che le macchine coinvolte aprano una porta dalla quale saranno raggiungibili

    La 2°a è meno veloce (in quanto viene eseguita tramite SOAP, quindi HTTP), ma ha l'impagabile vantaggio di rendere (se sviluppati secondo le direttive standard) gli strati raggiungibili anche da sistemi eterogenei (piattaforme differenti)

    La vera pecca dei WebServices è la sicurezza, ma nel framework 3.5 grazie a WCF è piuttosto agevole configurare servizi che utilizzano anche protocolli sicuri (https)

    Spero di essere stato esaustivo, e di esserti stato utile.

    Buon lavoro

  5. #5
    Originariamente inviato da Fabx75
    Ciao,
    grazie per l'attenzione...
    Si con sqldatasource tutto è più semplice, ma da quello che ho trovato in giro è una soluzione poco consigliata perchè le query poi si trovano intasate nel codice, questo rende più difficile la manutenzione futura, ti passo una reference dal sito microsoft (http://www.microsoft.com/italy/msdn/...atasource.mspx)

    Mi piacerebbe capire meglio la struttura a 3 livelli e quindi poi usare objectdatasource.
    C'è qualcuno qui lo utilizza? Mi aiutate?
    Grazie e ciao
    Fabrizio
    ho capito solo ora quello che volevi dire.
    Anche io ho condiviso le tue perplessità, parlando di 3 tier mi sono sempre chiesto
    perche mai la micrsoft avesse sviluppato datasource che richiedono la scrittura
    di codice sql addirittura nella pagina di presentazione, nemmeno in quella di codebehind.
    Evidentemente vi sono più utilizzi a seconda di che tipo di sito stai sviluppando.
    Cmq l'articolo di Daniele che hai linkato mi pare interessante ora me lo leggo.
    Se vuoi parlare direttamente con lui lo trovi su aspitalia.com solitamente sul forum
    risponde.

  6. #6
    Finito ora di leggere l'articolo, interessantissimo!
    Si dovrebbe sempre programmare in questo modo, anche se ammetto che a volte
    è più rapido sporcare il codice "affogandolo" di query

  7. #7
    Utente di HTML.it L'avatar di fede_00
    Registrato dal
    May 2004
    Messaggi
    279
    ObjectDataSource usa la reflection per instanziare ed utilizzare la classe che si occupa di prelevare i dati, perciò ha bisogno di conoscere, sotto forma di stringa, il nome della classe più i nomi dei metodi ed altri parametri se necessari

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.