나는 날짜가있는 테이블과 해당 날짜에 대한 다양한 데이터가 있습니다.테이블 어댑터가 내 날짜 열의 문자열에 캐스트를 강제로 수행하는 이유
WKDWKDDATE8 WKDDAYNM WKDAGENO WKDDAYNO WKDDATE6 WEEKNO WEEKRANGE AWEEK
2019-05-15 WEDNESDAY 43580 3 AJ0515 384 05/12 - 05/18 NULL
2019-05-16 THURSDAY 43581 4 AJ0516 384 05/12 - 05/18 NULL
과를 heres 내 WKDDATE8
필드가 Date
입니다 볼 수 있듯이 내 테이블
CREATE TABLE [dbo].[WKD](
[WKDDATE8] [date] NOT NULL,
[WKDDAYNM] [varchar](10) NOT NULL,
[WKDAGENO] [int] NULL,
[WKDDAYNO] [int] NULL,
[WKDDATE6] [varchar](6) NOT NULL,
[WEEKNO] [int] NULL,
[WEEKRANGE] [varchar](20) NULL,
[AWEEK] [varchar](1) NULL,
의 모습. 내 C# 응용 프로그램에서 SELECT * FROM WKD WHERE WKDDATE8 = @WKDDATE8
을 사용하여 WKDDATE8에서이 테이블을 쿼리하려면 tableadaptors
을 사용하고 있지만 어떤 이유로 인해 테이블에 http://imgur.com/a/cO5FA 문자열이 필요합니다.
이제는 이것이 실망하게됩니다. 나는 수동으로 문자열에서 datetime으로 디자이너를 변경하고 실행할 수 있습니다,하지만, 잘 작동하지만 다시 실행하고 쿼리가 문자열을 원하기 때문에 빌드 오류가 발생할 수 있습니다, 만약 내가 문자열로 가자면, 나는 명백한 cannot convert from 'System.DateTime' to 'string'
.
나는 왜 내 프로그램이 문자열을 원하는지에 대해 완전히 바보 취급을 당하고 잃어버린다.
E : 이것은 문제를 일으키는 코드입니다. 나는이 코드를 작성하지 않았다. 그것은 다시 두 번째 빌드에 변경됩니다대로 무의미 변경, 난 정말
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "4.0.0.0")]
[global::System.ComponentModel.Design.HelpKeywordAttribute("vs.data.TableAdapter")]
[global::System.ComponentModel.DataObjectMethodAttribute(global::System.ComponentModel.DataObjectMethodType.Select, false)]
public virtual CACTUSDataSet.WKDDataTable GetDataByWKD8(string WKDDATE8) {
this.Adapter.SelectCommand = this.CommandCollection[1];
if ((WKDDATE8 == null)) {
throw new global::System.ArgumentNullException("WKDDATE8");
}
else {
this.Adapter.SelectCommand.Parameters[0].Value = ((string)(WKDDATE8));
}
CACTUSDataSet.WKDDataTable dataTable = new CACTUSDataSet.WKDDataTable();
this.Adapter.Fill(dataTable);
return dataTable;
}
소스 코드는 어디에 있습니까? – Drew
TableAdaptor의 열이 "DateTime"유형으로 설정되어 있는지 확인하십시오. 비주얼 편집기를 사용하는 경우 열 이름을 클릭하기 만하면 속성 창에 유형 옵션이 있어야합니다. –
@BenAbraham – Multinerd