ユーザーはランダムに「タイプ「X」のオブジェクトをタイプ「X」にキャストできません」という例外エラーを受け取ります。この問題は 1 日に数回発生する場合があります。場合によっては、1 週間以上かかることもあります。
リスト「CurrentDetails」と「NextDetails」に「X」として入力するシリアル化されたオブジェクト(「X」)があります。テキスト変更イベントで、「CurrentDetails」の値をチェックし、その時点で例外が発生します。「型 X のオブジェクトを型 X にキャストできません」いくつかのコード サンプルを次に示します...
テキスト変更イベント (生データを表示するように編集)
Protected Sub txtPackaging_TextChanged(sender As Object, e As System.EventArgs) Handles txtPackaging.TextChanged
If WarehouseManager.GetDeliveryStatus(CurrentSUPPDelivery.DeliveryNumber) > 60 Then
'GETTIGN ERROR HERE Unable to cast object of type 'SUPPDelivery' to type 'SUPPDelivery'
'THROW ERROR
SetErrorMessage("<b>REFRESH/BACK DETECTED!</b> <br/> Or, this item has already been packed. <br/> Please exit wave.")
pnlItemDetails.Visible = False
pnlCurrent.Visible = False
pnlWaveDetails.Visible = False
Else 'continue pick/pack
btnProcessSingleItem_Click(sender, e)
End If
End Sub
View State Object (生データを表示するように編集)
Private Property CurrentSUPPDelivery() As WarehouseManager.SUPPDelivery
Get
Return Me.ViewState("CurrentSUPPDelivery")
End Get
Set(ByVal value As WarehouseManager.SUPPDelivery)
Me.ViewState("CurrentSUPPDelivery") = value
End Set
End Property
txtChange イベントの IF ステートメントでエラーをスローしています。何か案は?
編集:生のスタックデータ....
スタック トレース: C:\Inetpub\lawsonwebapps\warehouse\mobile\SingleUnitPickPack.aspx.vb の Warehouse_SingleUnitPickPack.get_CurrentSUPPDelivery():107 行目 C:\Inetpub\lawsonwebapps\warehouse\ の Warehouse_SingleUnitPickPack.txtPackaging_TextChanged(Object sender, EventArgs e) mobile\SingleUnitPickPack.aspx.vb: System.Web.UI.WebControls.TextBox.OnTextChanged(EventArgs e) の行 249 System.Web.UI.WebControls.TextBox.RaisePostDataChangedEvent() の System.Web.UI.WebControls.TextBox .System.Web.UI.IPostBackDataHandler.RaisePostDataChangedEvent() で System.Web.UI.Page.RaiseChangedEvents() で System.Web.UI.Page.ProcessRequestMain (ブール値 includeStagesBeforeAsyncPoint、ブール値 includeStagesAfterAsyncPoint)
編集: "X" - Manager.CurrentDetails ... RAW 名:SUPPDelivery
<Serializable()> Public Class SUPPDelivery
Private _DeliveryNumber As String
Private _OrderNumber As String
Private _OrderLine As String
Private _TransactionType As String
Private _PackedQty As String
Private _PackageNumber As String
Private _PackageMaterial As String
Private _OrderLineSuffix As String
Private _ItemNumber As String
Private _ItemLocation As String
Public Property DeliveryNumber() As String
Get
Return _DeliveryNumber
End Get
Set(ByVal value As String)
_DeliveryNumber = value
End Set
End Property
Public Property OrderNumber() As String
Get
Return _OrderNumber
End Get
Set(ByVal value As String)
_OrderNumber = value
End Set
End Property
Public Property OrderLine() As String
Get
Return _OrderLine
End Get
Set(ByVal value As String)
_OrderLine = value
End Set
End Property
Public Property TransactionType() As String
Get
Return _TransactionType
End Get
Set(ByVal value As String)
_TransactionType = value
End Set
End Property
Public Property PackedQty() As String
Get
Return _PackedQty
End Get
Set(ByVal value As String)
_PackedQty = value
End Set
End Property
Public Property PackageNumber() As String
Get
Return _PackageNumber
End Get
Set(ByVal value As String)
_PackageNumber = value
End Set
End Property
Public Property PackageMaterial() As String
Get
Return _PackageMaterial
End Get
Set(ByVal value As String)
_PackageMaterial = value
End Set
End Property
Public Property OrderLineSuffix() As String
Get
Return _OrderLineSuffix
End Get
Set(ByVal value As String)
_OrderLineSuffix = value
End Set
End Property
Public Property ItemNumber() As String
Get
Return _ItemNumber
End Get
Set(ByVal value As String)
_ItemNumber = value
End Set
End Property
Public Property ItemLocation() As String
Get
Return _ItemLocation
End Get
Set(ByVal value As String)
_ItemLocation = value
End Set
End Property
End Class