Ricerca 
it-ITen-US
Register
Login
In-Vesti Dotnetwork
IN-VESTI DNW!!!
Sono finalmente arrivate le nuovissime T-Shirt di DotNetWork!!! Con soli 15,00 € ci sosterrai nelle spese di gestione della Community e ti invieremo a casa una splendida maglietta.
Se vuoi contribuire al mantenimento di DotNetWork.it Vai sulla pagina Iscrizioni
Effettua il pagamento usando IWBank
Click per andare alla pagina di Iscrizione
Oppure un Bonifico bancario (le coordinate sono sulla pagina Iscrizioni), inviaci una mail a support@dotnetwork.it indicandoci la tua taglia e l'indirizzo di spedizione.  Non appena verificata la ricezione del pagamento provvederemo a spedirti la tua T-Shirt.  Le magliette sono disponibili nelle taglie S-M-L-XL-XXL (in caso di esaurimento di una delle taglie, indica quella di "Backup"). Grazie per IN-VESTIRTI con NOI!!!
.:DotNetWork Founders:.
    Print     


DotNetWork Forums
campo int Identity restituito come decimal
Last Post 27 May 2010 12:03 by Sabrina (DNW TEAM). 1 Replies.
Printer Friendly
Sort:
PrevPrev NextNext
You are not authorized to post a reply.
Author Messages

Posts:544

--
25 May 2010 16:16  
ho una tabella in SQL2008 con un campo IDPrenotazione di tipo int con Indentity a Yes.

in una Stored Procedure faccio l'insert di un record e poi faccio una select @@IDENTITY per avere l'IDPrenotazione indietro.

il problema è che con un ExecuteScalar mi viene restituito un object di tipo decimal. Come mai?

poi per aggirare l'ostacolo faccio il Cast:
int MioRisultato = (int)ExecuteScalar.....
questo non funziona. per poterlo avere in "int" devo fare così:
decimal MioPrimoRisultato = (decimal)ExecuteScalar.....
int MioSecondoRisultato = (int)MioPrimoRisultato;

non so dove sto sbagliando...

Grazie

Posts:813

--
27 May 2010 12:03  
Non so se stai sbagliando oppure se è una peculiarità di 2008 che @@Identity non sia del tipo di dato della tabella ma sia un tipo di dato decimal. Potrebbe essere tale perché così qualsiasi tipo numerico viene usato per il contatore automatico, è contenuto in un decimal.

Detto ciò puoi usare questo codice se preferisci.
object ret = Exec.ExecScalar( pCnString, SQL_HASTHREADS, CommandType.Text, para); int val = Convert.ToInt32(ret);

Saluti
Sabrina
You are not authorized to post a reply.

Active Forums 4.1
       
Articoli
Inheritance in pills (Part 1)
How to create a personalized TreeView
2008/03/22 | Author: Alberto De Luca
Ereditarietà applicata ai controlli
Creazione di una combobox che mostra immagini al posto del testo
2008/07/06 | Author: Andrea Zingoni
CodeDom Getting started part 2
Building the Code Generator
2009/11/07 | Author: Sabrna Cosolo
Introduzione a Windows Presentation Foundation (parte 2)
La prima di una serie di traduzioni da articoli di MSDN o altre fonti che offrono un punto di partenza per iniziare a capire il WPF.
2007/07/29 | Author: Patrizia Cosolo
Mixed Fry - General Purpouse classes (part 5)
Helper: Customized Exception and Composed Messages
2007/10/27 | Author: Sabrina Cosolo
Starting from scratch with Visual Studio
Introducing .NET and Visual Studio
2007/07/29 | Author: Sabrina Cosolo
Code Unit Testing (part 1)
How to start building tests to strengthen our code
2007/12/26 | Author: Sabrina Cosolo
DatagridView Formatting
How to manage the Visual behaviour of a DataGridView
2008/07/27 | Author: Andrea Zingoni
    Print     
Home|Forums|Blogs|Mappa del sito
© 2007-2010 by DotNetWork  .:.  Terms Of Use  .:.  Privacy Statement  .:.  Login  .:.