Kendi Makinamda kullanmış olduğum bir oyun panelini 2. bir sunucuya aldım panelde sorun yok fakat localde iken kayıt olma sorunu yokken,
Remote geçildiğinde Kayıt olunamıyor.
Hata şu ;
The transaction manager has disabled its support for remote/network transactions. (Exception from HRESULT: 0x8004D024)
Kayıt olma sayfası :
Imports System.Data
Imports System.Data.SqlClient
Imports System.Transactions
Imports System.Transactions.TransactionScope
Public Class UserDA
Inherits Instance.ConnectionManager
#Region "Atributos"
Private mySqlConnection As SqlConnection
Private mySqlConnectionWeb As SqlConnection
#End Region
#Region "Constructor"
Public Sub New()
mySqlConnection = New SqlConnection(Me.SqlConnectionDatabase)
mySqlConnectionWeb = New SqlConnection(Me.SqlConnectionDatabaseWeb)
End Sub
#End Region
#Region "No Transaccionales"
Public Function LoginWeb(ByVal paramUserID As String, ByVal paramPass As String) As DataSet
Dim da As New SqlDataAdapter("OSKOWeb_usp_Login", mySqlConnectionWeb)
da.SelectCommand.CommandType = CommandType.StoredProcedure
With da.SelectCommand.Parameters
.Add("@myId", SqlDbType.VarChar, 21).Value = paramUserID
.Add("@myPass", SqlDbType.VarChar, 13).Value = paramPass
End With
Dim ds As New DataSet
da.Fill(ds, "UserAccount")
Return ds
End Function
Public Function RecoverPassword(ByVal paramEmail As String) As DataSet
Dim da As New SqlDataAdapter("OSKOWeb_usp_get_UserPassword", mySqlConnectionWeb)
da.SelectCommand.CommandType = CommandType.StoredProcedure
da.SelectCommand.Parameters.Add("@myEmail", SqlDbType.VarChar, 50).Value = paramEmail
Dim ds As New DataSet
da.Fill(ds, "UserPassword")
Return ds
End Function
#End Region
#Region "Transaccionales"
Public Function Register(ByVal item As UserBE, ByVal strAccountIDReference As String, ByRef strMessage As String) As Integer
Dim myMessageGame As String = ""
Dim myActionGame As Integer = 0
Dim myMessageWeb As String = ""
Dim myActionWeb As Integer = 0
Dim options As New TransactionOptions()
options.IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted
options.Timeout = New TimeSpan(0, 2, 0)
Using scope As New TransactionScope(TransactionScopeOption.Required, options)
Using connGame As New SqlConnection(Me.SqlConnectionDatabase)
connGame.Open()
Using cmdGame As New SqlCommand("OSKO_usp_ins_Account", connGame)
cmdGame.CommandType = CommandType.StoredProcedure
With cmdGame.Parameters
.Add("@myId", SqlDbType.VarChar, 21).Value = item.UserID
.Add("@myPass", SqlDbType.VarChar, 13).Value = item.Password
.Add("@mySecretNumber", SqlDbType.Int).Value = item.SecretNumber
.Add("@myEmail", SqlDbType.VarChar, 50).Value = item.Email
.Add("@message", SqlDbType.VarChar, 100).Direction = ParameterDirection.Output
.Add("@action", SqlDbType.Int).Direction = ParameterDirection.Output
End With
Dim rowsAffectedGame As Integer = cmdGame.ExecuteNonQuery()
myMessageGame = cmdGame.Parameters("@message").Value
myActionGame = cmdGame.Parameters("@action").Value
If (rowsAffectedGame > 0) Then
Using connWeb As New SqlConnection(Me.SqlConnectionDatabaseWeb)
connWeb.Open()
Using cmdWeb As New SqlCommand("OSKOWeb_usp_ins_Account", connWeb)
cmdWeb.CommandType = CommandType.StoredProcedure
With cmdWeb.Parameters
.Add("@myId", SqlDbType.VarChar, 21).Value = item.UserID
.Add("@myPass", SqlDbType.VarChar, 13).Value = item.Password
.Add("@mySecretNumber", SqlDbType.Int).Value = item.SecretNumber
.Add("@myEmail", SqlDbType.VarChar, 50).Value = item.Email
.Add("@mySecretQuestion", SqlDbType.Int).Value = item.SecretQuestion
.Add("@mySecretAnswer", SqlDbType.VarChar, 50).Value = item.SecretAnswer
.Add("@myIpAddress", SqlDbType.VarChar, 15).Value = item.IpAddress
.Add("@strAccountIDReference", SqlDbType.VarChar, 21).Value = strAccountIDReference
.Add("@action", SqlDbType.Int).Direction = ParameterDirection.Output
.Add("@message", SqlDbType.VarChar, 100).Direction = ParameterDirection.Output
End With
Dim rowsAffectedWeb As Integer = cmdWeb.ExecuteNonQuery()
myMessageWeb = cmdWeb.Parameters("@message").Value
myActionWeb = cmdWeb.Parameters("@action").Value
If (rowsAffectedWeb > 0) Then
strMessage = myMessageWeb
scope.Complete()
Return myActionWeb
Else
strMessage = myMessageWeb
Return myActionWeb
End If
End Using ' Dispose the second command object.
End Using ' Dispose (close) the second connection.
End If
strMessage = myMessageGame
Return myActionGame
End Using ' Dispose the first command object.
End Using ' Dispose (close) the first connection.
End Using ' Dispose TransactionScope object, to commit or rollback transaction.
End Function
Public Function UpdatePassword(ByVal item As UserBE, ByVal paramNewPassword As String, ByRef outparamMessage As String) As Integer
Dim myMessageWeb As String = ""
Dim myActionWeb As Integer = 0
Dim myMessageGame As String = ""
Dim myActionGame As Integer = 0
Dim options As New TransactionOptions()
options.IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted
options.Timeout = New TimeSpan(0, 2, 0)
Using scope As New TransactionScope(TransactionScopeOption.Required, options)
Using connWeb As New SqlConnection(Me.SqlConnectionDatabaseWeb)
connWeb.Open()
Using cmdWeb As New SqlCommand("OSKOWeb_usp_upd_AccountPassword", connWeb)
cmdWeb.CommandType = CommandType.StoredProcedure
With cmdWeb.Parameters
.Add("@myId", SqlDbType.VarChar, 21).Value = item.UserID
.Add("@myPass", SqlDbType.VarChar, 13).Value = item.Password
.Add("@mySecretQuestion", SqlDbType.Int).Value = item.SecretQuestion
.Add("@mySecretAnswer", SqlDbType.VarChar, 50).Value = item.SecretAnswer
.Add("@myNewPass", SqlDbType.VarChar, 13).Value = paramNewPassword
.Add("@action", SqlDbType.Int).Direction = ParameterDirection.Output
.Add("@message", SqlDbType.VarChar, 100).Direction = ParameterDirection.Output
End With
Dim rowsAffectedWeb As Integer = cmdWeb.ExecuteNonQuery()
myMessageWeb = cmdWeb.Parameters("@message").Value
myActionWeb = cmdWeb.Parameters("@action").Value
If (rowsAffectedWeb > 0) Then
Using connGame As New SqlConnection(Me.SqlConnectionDatabase)
connGame.Open()
Using cmdGame As New SqlCommand("OSKO_usp_upd_AccountPassword", connGame)
cmdGame.CommandType = CommandType.StoredProcedure
With cmdGame.Parameters
.Add("@myId", SqlDbType.VarChar, 21).Value = item.UserID
.Add("@myPass", SqlDbType.VarChar, 13).Value = item.Password
.Add("@myNewPass", SqlDbType.VarChar, 13).Value = paramNewPassword
.Add("@action", SqlDbType.Int).Direction = ParameterDirection.Output
.Add("@message", SqlDbType.VarChar, 100).Direction = ParameterDirection.Output
End With
Dim rowsAffectedGame As Integer = cmdGame.ExecuteNonQuery()
myMessageGame = cmdGame.Parameters("@message").Value
myActionGame = cmdGame.Parameters("@action").Value
outparamMessage = myMessageGame
If (rowsAffectedGame > 0) Then
scope.Complete()
Return myActionGame
Else
Return myActionGame
End If
End Using ' Dispose the second command object.
End Using ' Dispose (close) the second connection.
End If
outparamMessage = myMessageWeb
Return myActionWeb
End Using ' Dispose the first command object.
End Using ' Dispose (close) the first connection.
End Using ' Dispose TransactionScope object, to commit or rollback transaction.
End Function
Public Function BlockAccount(ByVal item As UserBE, ByVal paramPassword As String, ByVal paramSecretNumber As Integer, ByRef outparamMessage As String) As Integer
Dim myMessageWeb As String = ""
Dim myActionWeb As Integer = 0
Dim myMessageGame As String = ""
Dim myActionGame As Integer = 0
Dim options As New TransactionOptions()
options.IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted
options.Timeout = New TimeSpan(0, 2, 0)
Using scope As New TransactionScope(TransactionScopeOption.Required, options)
Using connWeb As New SqlConnection(Me.SqlConnectionDatabaseWeb)
connWeb.Open()
Using cmdWeb As New SqlCommand("OSKOWeb_usp_BlockAccount", connWeb)
cmdWeb.CommandType = CommandType.StoredProcedure
With cmdWeb.Parameters
.Add("@myId", SqlDbType.VarChar, 21).Value = item.UserID
.Add("@myPass", SqlDbType.VarChar, 13).Value = paramPassword
.Add("@mySecretNumber", SqlDbType.Int).Value = paramSecretNumber
.Add("@action", SqlDbType.Int).Direction = ParameterDirection.Output
.Add("@message", SqlDbType.VarChar, 100).Direction = ParameterDirection.Output
End With
Dim rowsAffectedWeb As Integer = cmdWeb.ExecuteNonQuery()
myMessageWeb = cmdWeb.Parameters("@message").Value
myActionWeb = cmdWeb.Parameters("@action").Value
If (rowsAffectedWeb > 0) Then
Using connGame As New SqlConnection(Me.SqlConnectionDatabase)
connGame.Open()
Using cmdGame As New SqlCommand("OSKO_usp_BlockAccount", connGame)
cmdGame.CommandType = CommandType.StoredProcedure
With cmdGame.Parameters
.Add("@myId", SqlDbType.VarChar, 21).Value = item.UserID
.Add("@myPass", SqlDbType.VarChar, 13).Value = paramPassword
.Add("@mySecretNumber", SqlDbType.Int).Value = paramSecretNumber
.Add("@action", SqlDbType.Int).Direction = ParameterDirection.Output
.Add("@message", SqlDbType.VarChar, 100).Direction = ParameterDirection.Output
End With
Dim rowsAffectedGame As Integer = cmdGame.ExecuteNonQuery()
myMessageGame = cmdGame.Parameters("@message").Value
myActionGame = cmdGame.Parameters("@action").Value
outparamMessage = myMessageGame
If (rowsAffectedGame > 0) Then
scope.Complete()
Return myActionGame
Else
Return myActionGame
End If
End Using ' Dispose the second command object.
End Using ' Dispose (close) the second connection.
End If
outparamMessage = myMessageWeb
Return myActionWeb
End Using ' Dispose the first command object.
End Using ' Dispose (close) the first connection.
End Using ' Dispose TransactionScope object, to commit or rollback transaction.
End Function
Public Function UnblockAccount(ByVal item As UserBE, ByVal paramPassword As String, ByVal paramSecretNumber As Integer, ByRef outparamMessage As String) As Integer
Dim myMessageWeb As String = ""
Dim myActionWeb As Integer = 0
Dim myMessageGame As String = ""
Dim myActionGame As Integer = 0
Dim options As New TransactionOptions()
options.IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted
options.Timeout = New TimeSpan(0, 2, 0)
Using scope As New TransactionScope(TransactionScopeOption.Required, options)
Using connWeb As New SqlConnection(Me.SqlConnectionDatabaseWeb)
connWeb.Open()
Using cmdWeb As New SqlCommand("OSKOWeb_usp_UnblockAccount", connWeb)
cmdWeb.CommandType = CommandType.StoredProcedure
With cmdWeb.Parameters
.Add("@myId", SqlDbType.VarChar, 21).Value = item.UserID
.Add("@myPass", SqlDbType.VarChar, 13).Value = paramPassword
.Add("@mySecretNumber", SqlDbType.Int).Value = paramSecretNumber
.Add("@action", SqlDbType.Int).Direction = ParameterDirection.Output
.Add("@message", SqlDbType.VarChar, 100).Direction = ParameterDirection.Output
End With
Dim rowsAffectedWeb As Integer = cmdWeb.ExecuteNonQuery()
myMessageWeb = cmdWeb.Parameters("@message").Value
myActionWeb = cmdWeb.Parameters("@action").Value
If (rowsAffectedWeb > 0) Then
Using connGame As New SqlConnection(Me.SqlConnectionDatabase)
connGame.Open()
Using cmdGame As New SqlCommand("OSKO_usp_UnblockAccount", connGame)
cmdGame.CommandType = CommandType.StoredProcedure
With cmdGame.Parameters
.Add("@myId", SqlDbType.VarChar, 21).Value = item.UserID
.Add("@myPass", SqlDbType.VarChar, 13).Value = paramPassword
.Add("@mySecretNumber", SqlDbType.Int).Value = paramSecretNumber
.Add("@action", SqlDbType.Int).Direction = ParameterDirection.Output
.Add("@message", SqlDbType.VarChar, 100).Direction = ParameterDirection.Output
End With
Dim rowsAffectedGame As Integer = cmdGame.ExecuteNonQuery()
myMessageGame = cmdGame.Parameters("@message").Value
myActionGame = cmdGame.Parameters("@action").Value
outparamMessage = myMessageGame
If (rowsAffectedGame > 0) Then
scope.Complete()
Return myActionGame
Else
Return myActionGame
End If
End Using ' Dispose the second command object.
End Using ' Dispose (close) the second connection.
End If
outparamMessage = myMessageWeb
Return myActionWeb
End Using ' Dispose the first command object.
End Using ' Dispose (close) the first connection.
End Using ' Dispose TransactionScope object, to commit or rollback transaction.
End Function
Public Function UpdateEmail(ByVal item As UserBE, ByVal paramNewEmail As String, ByRef outparamMessage As String) As Integer
Dim outparamAction As Integer
mySqlConnectionWeb.Open()
Dim trW As SqlTransaction = mySqlConnectionWeb.BeginTransaction(System.Data.IsolationLevel.Serializable)
Try
Dim cmd As New SqlCommand("OSKOWeb_usp_upd_AccountEmail", mySqlConnectionWeb, trW)
cmd.CommandType = CommandType.StoredProcedure
With cmd.Parameters
.Add("@myId", SqlDbType.VarChar, 21).Value = item.UserID
.Add("@myEmail", SqlDbType.VarChar, 50).Value = item.Email
.Add("@mySecretQuestion", SqlDbType.Int).Value = item.SecretQuestion
.Add("@myNewEmail", SqlDbType.VarChar, 50).Value = paramNewEmail
.Add("@action", SqlDbType.Int).Direction = ParameterDirection.Output
.Add("@message", SqlDbType.VarChar, 100).Direction = ParameterDirection.Output
End With
cmd.ExecuteNonQuery()
outparamMessage = cmd.Parameters("@message").Value
outparamAction = cmd.Parameters("@action").Value
trW.Commit()
Return outparamAction
Catch ex As Exception
trW.Rollback()
outparamMessage = "An error has occurred, try again later."
Return 0
Finally
mySqlConnectionWeb.Close()
End Try
End Function
#End Region
#Region "Comentarios"
'Public Function Register(ByVal item As UserBE, ByRef strMessage As String) As Integer
' 'Dim myMessage As String = ""
' Dim myAction As Integer = 0
' mySqlConnection.Open()
' Dim tr As SqlTransaction = mySqlConnection.BeginTransaction(IsolationLevel.Serializable)
' Try
' Dim cmd As New SqlCommand("OSKO_usp_ins_Account", mySqlConnection, tr)
' cmd.CommandType = CommandType.StoredProcedure
' With cmd.Parameters
' .Add("@myId", SqlDbType.VarChar, 21).Value = item.UserID
' .Add("@myPass", SqlDbType.VarChar, 13).Value = item.Password
' .Add("@mySecretNumber", SqlDbType.Int).Value = item.SecretNumber
' .Add("@myEmail", SqlDbType.VarChar, 50).Value = item.Email
' .Add("@message", SqlDbType.VarChar, 100).Direction = ParameterDirection.Output
' .Add("@action", SqlDbType.Int).Direction = ParameterDirection.Output
' End With
' cmd.ExecuteNonQuery()
' strMessage = cmd.Parameters("@message").Value
' myAction = cmd.Parameters("@action").Value
' If myAction = 0 Then 'myMessage.StartsWith("The") Then
' Return myAction
' End If
' tr.Commit()
' Catch ex As Exception
' tr.Rollback()
' Return ex.Message '"An error has occurred, try again later."
' Finally
' mySqlConnection.Close()
' End Try
' mySqlConnectionWeb.Open()
' Dim trW As SqlTransaction = mySqlConnectionWeb.BeginTransaction(IsolationLevel.Serializable)
' Try
' Dim cmd As New SqlCommand("OSKOWeb_usp_ins_Account", mySqlConnectionWeb, trW)
' cmd.CommandType = CommandType.StoredProcedure
' With cmd.Parameters
' .Add("@myId", SqlDbType.VarChar, 21).Value = item.UserID
' .Add("@myPass", SqlDbType.VarChar, 13).Value = item.Password
' .Add("@mySecretNumber", SqlDbType.Int).Value = item.SecretNumber
' .Add("@myEmail", SqlDbType.VarChar, 50).Value = item.Email
' .Add("@mySecretQuestion", SqlDbType.Int).Value = item.SecretQuestion
' .Add("@mySecretAnswer", SqlDbType.VarChar, 50).Value = item.SecretAnswer
' .Add("@myIpAddress", SqlDbType.VarChar, 15).Value = item.IpAddress
' .Add("@action", SqlDbType.Int).Direction = ParameterDirection.Output
' .Add("@message", SqlDbType.VarChar, 100).Direction = ParameterDirection.Output
' End With
' cmd.ExecuteNonQuery()
' strMessage = cmd.Parameters("@message").Value
' myAction = cmd.Parameters("@action").Value
' If myAction = 0 Then 'myMessage.StartsWith("The") Then
' Return myAction
' End If
' trW.Commit()
' Catch ex As Exception
' trW.Rollback()
' Return ex.Message '"An error has occurred, try again later."
' Finally
' mySqlConnectionWeb.Close()
' End Try
' Return myAction
'End Function
'Public Function UpdatePassword(ByVal item As UserBE, ByVal paramNewPassword As String, ByRef outparamMessage As String) As Integer
' Dim outparamAction As Integer
' mySqlConnectionWeb.Open()
' Dim trW As SqlTransaction = mySqlConnectionWeb.BeginTransaction(System.Data.IsolationLevel.Serializable)
' Try
' Dim cmd As New SqlCommand("OSKOWeb_usp_upd_AccountPassword", mySqlConnectionWeb, trW)
' cmd.CommandType = CommandType.StoredProcedure
' With cmd.Parameters
' .Add("@myId", SqlDbType.VarChar, 21).Value = item.UserID
' .Add("@myPass", SqlDbType.VarChar, 13).Value = item.Password
' .Add("@mySecretQuestion", SqlDbType.Int).Value = item.SecretQuestion
' .Add("@mySecretAnswer", SqlDbType.VarChar, 50).Value = item.SecretAnswer
' .Add("@myNewPass", SqlDbType.VarChar, 13).Value = paramNewPassword
' .Add("@action", SqlDbType.Int).Direction = ParameterDirection.Output
' .Add("@message", SqlDbType.VarChar, 100).Direction = ParameterDirection.Output
' End With
' cmd.ExecuteNonQuery()
' outparamMessage = cmd.Parameters("@message").Value
' outparamAction = cmd.Parameters("@action").Value
' trW.Commit()
' Return outparamAction
' Catch ex As Exception
' trW.Rollback()
' outparamMessage = "An error has occurred, try again later."
' Return 0
' Finally
' mySqlConnectionWeb.Close()
' End Try
'End Function
'Public Function BlockAccount(ByVal item As UserBE, ByVal paramPassword As String, ByVal paramSecretNumber As Integer, ByRef outparamMessage As String) As Integer
' Dim outparamAction As Integer
' mySqlConnectionWeb.Open()
' Dim trW As SqlTransaction = mySqlConnectionWeb.BeginTransaction(System.Data.IsolationLevel.Serializable)
' Try
' Dim cmd As New SqlCommand("OSKOWeb_usp_BlockAccount", mySqlConnectionWeb, trW)
' cmd.CommandType = CommandType.StoredProcedure
' With cmd.Parameters
' .Add("@myId", SqlDbType.VarChar, 21).Value = item.UserID
' .Add("@myPass", SqlDbType.VarChar, 13).Value = paramPassword
' .Add("@mySecretNumber", SqlDbType.Int).Value = paramSecretNumber
' .Add("@action", SqlDbType.Int).Direction = ParameterDirection.Output
' .Add("@message", SqlDbType.VarChar, 100).Direction = ParameterDirection.Output
' End With
' cmd.ExecuteNonQuery()
' outparamMessage = cmd.Parameters("@message").Value
' outparamAction = cmd.Parameters("@action").Value
' trW.Commit()
' Return outparamAction
' Catch ex As Exception
' trW.Rollback()
' outparamMessage = "An error has occurred, try again later."
' Return 0
' Finally
' mySqlConnectionWeb.Close()
' End Try
'End Function
'Public Function UnblockAccount(ByVal item As UserBE, ByVal paramPassword As String, ByVal paramSecretNumber As Integer, ByRef outparamMessage As String) As Integer
' Dim outparamAction As Integer
' mySqlConnectionWeb.Open()
' Dim trW As SqlTransaction = mySqlConnectionWeb.BeginTransaction(System.Data.IsolationLevel.Serializable)
' Try
' Dim cmd As New SqlCommand("OSKOWeb_usp_UnblockAccount", mySqlConnectionWeb, trW)
' cmd.CommandType = CommandType.StoredProcedure
' With cmd.Parameters
' .Add("@myId", SqlDbType.VarChar, 21).Value = item.UserID
' .Add("@myPass", SqlDbType.VarChar, 13).Value = paramPassword
' .Add("@mySecretNumber", SqlDbType.Int).Value = paramSecretNumber
' .Add("@action", SqlDbType.Int).Direction = ParameterDirection.Output
' .Add("@message", SqlDbType.VarChar, 100).Direction = ParameterDirection.Output
' End With
' cmd.ExecuteNonQuery()
' outparamMessage = cmd.Parameters("@message").Value
' outparamAction = cmd.Parameters("@action").Value
' trW.Commit()
' Return outparamAction
' Catch ex As Exception
' trW.Rollback()
' outparamMessage = "An error has occurred, try again later."
' Return 0
' Finally
' mySqlConnectionWeb.Close()
' End Try
'End Function
#End Region
End ClassYardımcı olucak biri çıkar inşallah