VS2010 SqlDataReader
Jeg har nedenstående kodestykke, men det returnerer altid 99 = SqlDataReaderen ikke får læst ordentligt...Er der nogen der kan finde fejlen??
Har "vedhæftet" kode og stored procedure
***********************************************************
Kildekode:
***********************************************************
Function OpretFag(ByVal iFag_type As Integer, ByVal bFag_aktiv As Boolean, ByVal sFag_titel As String, ByVal sFag_manchet As String, ByVal sFag_indhold As String,
ByVal sFag_amuNr As String, ByVal sFag_kursusbevis As String, ByVal sFag_modulstatus As String, ByVal sFag_omfang As String, ByVal sFag_eksamen As String,
ByVal sFag_adgang As String, ByVal Sfag_kontakt As String, ByVal sFag_Jobmuligheder As String, ByVal sFag_blivkontaktet As String, ByVal sFag_seoBeskrivelse As String,
ByVal sFag_seoOrd As String, ByVal bFag_visWWW As Boolean) As Integer
Dim sqlCon As New SqlConnection(System.Configuration.ConfigurationManager.AppSettings("ConnectionString"))
Dim cmd As New SqlCommand
Dim oReader As SqlDataReader
Dim iResultat As Integer
cmd.CommandText = "FagOpret"
cmd.CommandType = CommandType.StoredProcedure
cmd.Parameters.Add(New SqlParameter("@fag_type", SqlDbType.Int))
cmd.Parameters("@fag_type").Value = iFag_type
cmd.Parameters.Add(New SqlParameter("@fag_aktiv", SqlDbType.Bit, 1))
cmd.Parameters("@fag_aktiv").Value = bFag_aktiv
cmd.Parameters.Add(New SqlParameter("@fag_titel", SqlDbType.VarChar, 100))
cmd.Parameters("@fag_titel").Value = sFag_titel
cmd.Parameters.Add(New SqlParameter("@fag_manchet", SqlDbType.VarChar, 500))
cmd.Parameters("@fag_manchet").Value = sFag_manchet
cmd.Parameters.Add(New SqlParameter("@fag_indhold", SqlDbType.VarChar, -1))
cmd.Parameters("@fag_indhold").Value = sFag_indhold
cmd.Parameters.Add(New SqlParameter("@fag_amuNr", SqlDbType.VarChar, 100))
cmd.Parameters("@fag_amuNr").Value = sFag_amuNr
cmd.Parameters.Add(New SqlParameter("@fag_kursusbevis", SqlDbType.VarChar, 500))
cmd.Parameters("@fag_kursusbevis").Value = sFag_kursusbevis
cmd.Parameters.Add(New SqlParameter("@fag_modulstatus", SqlDbType.VarChar, 500))
cmd.Parameters("@fag_modulstatus").Value = sFag_modulstatus
cmd.Parameters.Add(New SqlParameter("@fag_omfang", SqlDbType.VarChar, 500))
cmd.Parameters("@fag_omfang").Value = sFag_omfang
cmd.Parameters.Add(New SqlParameter("@fag_eksamen", SqlDbType.VarChar, 500))
cmd.Parameters("@fag_eksamen").Value = sFag_eksamen
cmd.Parameters.Add(New SqlParameter("@fag_adgang", SqlDbType.VarChar, 500))
cmd.Parameters("@fag_adgang").Value = sFag_adgang
cmd.Parameters.Add(New SqlParameter("@fag_kontakt", SqlDbType.VarChar, 500))
cmd.Parameters("@fag_kontakt").Value = Sfag_kontakt
cmd.Parameters.Add(New SqlParameter("@fag_Jobmuligheder", SqlDbType.VarChar, 500))
cmd.Parameters("@fag_Jobmuligheder").Value = sFag_Jobmuligheder
cmd.Parameters.Add(New SqlParameter("@fag_blivkontaktet", SqlDbType.VarChar, 500))
cmd.Parameters("@fag_blivkontaktet").Value = sFag_blivkontaktet
cmd.Parameters.Add(New SqlParameter("@fag_seoBeskrivelse", SqlDbType.VarChar, 200))
cmd.Parameters("@fag_seoBeskrivelse").Value = sFag_seoBeskrivelse
cmd.Parameters.Add(New SqlParameter("@fag_seoOrd", SqlDbType.VarChar, 300))
cmd.Parameters("@fag_seoOrd").Value = sFag_seoOrd
cmd.Parameters.Add(New SqlParameter("@fag_visWWW", SqlDbType.Bit, 1))
cmd.Parameters("@fag_visWWW").Value = bFag_visWWW
cmd.Connection = sqlCon
sqlCon.Open()
oReader = cmd.ExecuteReader()
oReader.Read()
If oReader.HasRows Then
iResultat = oReader.Item(0)
Else
iResultat = 99
End If
oReader.Close()
sqlCon.Close()
sqlCon = Nothing
Return iResultat
End Function
***********************************************************
Stored procedure:
***********************************************************
PROCEDURE FagOpret
@fag_type int, @fag_aktiv bit, @fag_titel varchar(100), @fag_manchet varchar(500), @fag_indhold varchar(max),
@fag_amuNr varchar(100), @fag_kursusbevis varchar(500), @fag_modulstatus varchar(500), @fag_omfang varchar(500),
@fag_eksamen varchar(500), @fag_adgang varchar(500), @fag_kontakt varchar(500), @fag_Jobmuligheder varchar(500),
@fag_blivkontaktet varchar(500), @fag_seoBeskrivelse varchar(200), @fag_seoOrd varchar(300), @fag_visWWW bit
AS
declare @indeks int
BEGIN
SET NOCOUNT ON;
BEGIN TRANSACTION
insert into Fag values
(@fag_type, @fag_aktiv, @fag_titel, @fag_manchet, @fag_indhold, @fag_amuNr, @fag_kursusbevis, @fag_modulstatus, @fag_omfang, @fag_eksamen, @fag_adgang, @fag_kontakt, @fag_Jobmuligheder, @fag_blivkontaktet, @fag_seoBeskrivelse, @fag_seoOrd, @fag_visWWW)
if @@ERROR = 0
begin
COMMIT TRANSACTION
set @indeks = @@IDENTITY
end
else
begin
ROLLBACK TRANSACTION
set @indeks = 0
end
return @indeks
END