わかりましたので、vb.netアプリケーションにMsアクセステーブルを追加してから、DBNull値を持つ列をテーブルに含むフィルターを作成しました。問題は、dbnull値を持つセルを持つフィルターに何かを書き始めるたびに、エラー
""" テーブル 'Parts' の列 'Postion' の値は DBNull です。 """
例外の詳細は """""""""""""""" です。
System.Data.StrongTypingException was unhandled by user code
Message=The value for column 'Postion' in table 'Parts' is DBNull.
Source=Erkat
StackTrace:
at Erkat.cutterprogDataSet.PartsRow.get_Postion() in C:\Users\Mina\Documents\Visual Studio 2010\Projects\Erkatpj\Erkat\cutterprogDataSet.Designer.vb:line 2634
InnerException: System.InvalidCastException
Message=Conversion from type 'DBNull' to type 'String' is not valid.
Source=Microsoft.VisualBasic
StackTrace:
at Microsoft.VisualBasic.CompilerServices.Conversions.ToString(Object Value)
at Erkat.cutterprogDataSet.PartsRow.get_Postion() in C:\Users\Mina\Documents\Visual Studio 2010\Projects\Erkatpj\Erkat\cutterprogDataSet.Designer.vb:line 2632
InnerException:
""""""""""""""""""
私は解決策を見つけましたが、それは一時的なものにすぎません
デザイナーの AUTO GENERATED コードで
"""
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Public Property Postion() As String
Get
Try
Return CType(Me(Me.tableParts.PostionColumn),String)
Catch e As Global.System.InvalidCastException
Throw New Global.System.Data.StrongTypingException("The value for column 'Postion' in table 'Parts' is DBNull.", e)
End Try
End Get
Set
Me(Me.tableParts.PostionColumn) = value
End Set
End Property
""" に変更しました
""""""""""""""""""""
<Global.System.Diagnostics.DebuggerNonUserCodeAttribute(), _
Global.System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")> _
Public Property Postion() As String
Get
Try
If Convert.IsDBNull(Me(Me.tableParts.PostionColumn)) Then
Return Nothing
Else
Return CType(Me(Me.tableParts.PostionColumn), String)
End If
Catch e As Global.System.InvalidCastException
Throw New Global.System.Data.StrongTypingException("The value for column 'Postion' in table 'Parts' is DBNull.", e)
End Try
End Get
Set
Me(Me.tableParts.PostionColumn) = value
End Set
End Property
""""""""""""""""""""" しかし、その自動生成以来、それを削除して古いものを再び作成し続けます
誰か助けてください??