アプリケーションをローカルマシンからWebサーバーに移動するときにエラーが発生しました。 (私は私のローカルホスト上のエラーを取得していない)WebサーバーにASP.NETアプリケーションを展開する際の問題
例外をスローするコードを以下にリストされている:
Dim sSQL As String
Dim strXSLFile As String
sSQL = "<?xml version=""1.0"" ?>"
sSQL += "<ROOT xmlns:sql=""urn:schemas-microsoft-com:xml-sql"">"
sSQL += "<sql:header>"
sSQL += "<sql:param name='uid'/>"
sSQL += "<sql:param name='pwd'/>"
sSQL += "</sql:header>"
sSQL += "<SESSION>"
sSQL += "<LANG>" & lang & "</LANG>"
sSQL += "<SSN>" & Session.SessionID & "</SSN>"
sSQL += "</SESSION>"
sSQL += "<sql:query>exec objSession_login @uid,@pwd</sql:query>"
sSQL += "</ROOT>"
Dim myxml As New XmlDocument
Try
Using conn As SqlConnection = CustomClass.Data.SqlConnectionProvider.Create()
Dim cmd As SqlXmlCommand
cmd = New SqlXmlCommand(conn.ConnectionString & ";Provider=SQLOLEDB.1;")
cmd.CommandType = SqlXmlCommandType.Template
cmd.CommandText = sSQL
Dim paramUid As SqlXmlParameter = cmd.CreateParameter()
paramUid.Name = "@uid"
paramUid.Value = username
Dim paramPwd As SqlXmlParameter = cmd.CreateParameter()
paramPwd.Name = "@pwd"
paramPwd.Value = password
Dim oXR As XmlReader = cmd.ExecuteXmlReader() ' Problem is here
myxml.Load(oXR)
End Using
strXSLFile = "xsl/Dialogue.login.xsl"
Dim mytransform As New XslTransform
Dim myreader As XmlReader
Dim myresolver As XmlResolver
Dim xpDoc As New XPathDocument(New XmlNodeReader(myxml))
mytransform.Load(Current.Request.PhysicalApplicationPath & strXSLFile)
myreader = mytransform.Transform(xpDoc, Nothing, myresolver)
myxml.Load(myreader)
mytransform = Nothing
myreader = Nothing
myresolver = Nothing
xpDoc = Nothing
xmlloaddoc = myxml
Catch ex As Exception
LogWriter.CriticalError(ex, "User Login - Exception Thrown: " & ex.Message)
Err.Raise(Number:=Err.Number, Description:=ex.StackTrace)
End Try
例外をスローして、特定の行は、次のとおりです。XmlReaderを= CMDとして薄暗いOXR
例外#1:
.ExecuteXmlReader()ログ情報は、以下の例外を明らかにしました
ユーザーログイン - 例外スロー:SQLOLEDBまたはSQLNCLIをデータプロバイダーとして指定する必要があります。 " Microsoft.Data.SqlXml.SqlXmlException:SQLOLEDBまたはSQLNCLIをデータプロバイダーとして指定する必要があります。 ---> System.Runtime.InteropServices.COMException:SQLOLEDBまたはSQLNCLIをデータプロバイダーとして指定する必要があります。 Microsoft.Data.SqlXml.Common.UnsafeNativeMethods.ISQLXMLCommandManagedInterface.ExecuteToOutputStream()、Microsoft.Data.SqlXml.SqlXmlCommand.innerExecute(ストリームstrm)---内部例外スタックトレースの終了--- Microsoft.Data.SqlXml.SqlXmlCommand
「ユーザー:dialogue.login.UserLogin(文字列名、文字列のパスワード、文字列のlang)
例外#2でMicrosoft.Data.SqlXml.SqlXmlCommand.ExecuteXmlReaderで.ExecuteStream()()ログイン - 例外がスローされました:HRESULTからの例外:0x80040E14 " Microsoft.Data.SqlXml.SqlXmlException:HRESULTからの例外:0x80040E14 ---> System.Runtime.InteropServices.COMException :Microsoft.Data.SqlXml.Common.UnsafeNativeMethods.ISQLXMLCommandManagedInterface.ExecuteToOutputStream()、Microsoft.Data.SqlXml.SqlXmlCommand.innerExecute(ストリームstrm)でのHRESULT:0x80040E14からの例外---内部例外スタックトレースの終了--- Microsoft dialogue.login.UserLogin(文字列名、文字列のパスワード、文字列のlang)
でMicrosoft.Data.SqlXml.SqlXmlCommand.ExecuteXmlReaderで.Data.SqlXml.SqlXmlCommand.ExecuteStream()()例外の最初であります私のプロバイダとしてSQLOLEDB.1を使用して最初に発生したエラーで、私は別のプロバイダで遊び始め、2番目の2番目の例外がありました。
アイデア?
はい、私たちのサーバーに現在インストールされており、私たちはIIS6.0を使用しています。問題は残っています。 – Brandon