Linq의 초보자가 기본 변환을 받고 있기 때문에 필터링을 통해 Datatable을 Dataview로 변환 할 때 Dataset으로 세부 사항을 가져 오도록 내 SQL 데이터베이스를 쿼리했습니다. 오류.'System.Byte'유형의 객체를 'System.String'유형으로 캐스팅 할 수 없습니다.
코드 : int로 캐스팅했을 때
이DataView cktDv = (from clounceform in dsclounceForms.Tables["Table2"].AsEnumerable()
where clounceform.Field<string>("Form_FileType_ID").Equals("5")
select clounceform).CopyToDataTable().AsDataView();
예외가
Unable to cast object of type 'System.Byte' to type 'System.String'.
System.Data.DataSetExtensions
at System.Data.DataRowExtensions.UnboxT`1.ReferenceField(Object value)
at System.Data.DataRowExtensions.Field[T](DataRow row, String columnName)
at ClounceFormsSuite.Design.CreateFormDesign.<>c.<CreateForm>b__12_0(DataRow bounceform) in myprojectfolderpath\CreateFormDesign.xaml.cs:line 115
at System.Linq.Enumerable.WhereEnumerableIterator`1.MoveNext()
at System.Data.DataTableExtensions.LoadTableFromEnumerable[T](IEnumerable`1 source, DataTable table, Nullable`1 options, FillErrorEventHandler errorHandler)
at System.Data.DataTableExtensions.CopyToDataTable[T](IEnumerable`1 source)
at ClounceFormsSuite.Design.CreateFormDesign.CreateForm(String[] cktFileContent, String filePath, String formID) in myprojectfolderpath\CreateFormDesign.xaml.cs:line 114
at ClounceFormsSuite.Design.CreateFormDesign.UserControl_Loaded(Object sender, RoutedEventArgs e) in myprojectfolderpath\CreateFormDesign.xaml.cs:line 70
내가 int로 문자열의 더 내가 변경 가리키고 캐스팅을 진행을 couldnt하고 다른 오류를주는 나에게 더 오해의 소지가있다
오류 :
Specified cast is not valid.
어쩌면이 도움이 될 것입니다. http://stackoverflow.com/questions/1003275/how-to-convert-byte-to-string – ViVi
데이터베이스의 'Form_FileType_ID'은 어떤 데이터 유형입니까? – lokusking
그것은 int 데이터 유형 –