尝试更新时,错误字符串未被识别为有效的日期时间。 [英] While trying to update there is an error string was not recognized as a valid datetime.

查看:55
本文介绍了尝试更新时,错误字符串未被识别为有效的日期时间。的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

这是我的代码



updDate.UpdateBlackList(

lblID.Text,

Convert.ToDateTime (TextBoxMD.Text),

Convert.ToDateTime(TextBoxPD.Text),

Convert.ToDateTime(TextBoxPERD.Text),

转换。 ToDateTime(TextBoxID.Text),

Convert.ToDateTime(TextBoxFD.Text),

TextBoxPV.SelectedItem.Text,

TextBoxDN.Text,

TextBoxFN.Text,

TextBoxDA.Text,

TextBoxDD.Text,

Convert.ToDateTime(TextBoxDVF。文本),

Convert.ToDateTime(TextBoxDVT.Text),

Convert.ToDateTime(TextBoxED.Text),

TextBoxMN.Text,

TextBoxRA.Text,

TextBoxR.Text,

TextBoxS.SelectedItem.Text,

System.Environment.UserName ,

DateTime.Now

);



我有什么试过:



< asp:Content ID =Content1ContentPlaceHolderID =headrunat =Server>



< asp:Content ID =Content2ContentPlaceHolderID =ContentPlaceHolder1runat =Server>

< asp:ToolkitScriptManager ID =ToolkitScriptManager1 runat =server>





运输黑名单合规



< asp:UpdatePanel ID =UpdatePanel1runat =server>

< ; contenttemplate>

< asp:GridView ID =GridView1class =table table-bordered table-condensedAutoGenerateColumns =false

EmptyDataText =没有记录发现!!! DataKeyNames =idAllowPaging =true

runat =serverPagerSettings-Mode =Numeric>

< rowstyle backcolor =#ffffff字体-size =11pxfont-names =Verdanaforecolor =Black>

Horizo​​ntalAlign =Center/>

< HeaderStyle BackColor = DarkGrayFont-Size =11pxForeColor =WhiteHorizo​​ntalAlign =Center/>

< alternatingrowstyle backcolor =White>

<列> < asp:TemplateField HeaderText =Edit>

< itemtemplate>

< asp:ImageButton ID =imgbtnImageUrl =〜/ Edit.jpg runat =serverWidth =25Height =25

OnClick =imgbtn_Click/>





< asp:BoundField DataField =idHeaderText =idHtmlEncode =true/>

< asp:BoundField DataField =LocationHeaderText =位置HtmlEncode =true/>

< asp:BoundField DataField =vendoNameHeaderText =VendorHtmlEncode =true/>

< ; asp:BoundField DataField =VehcleNameHeaderText =VehcleHtmlEncode =true/>

< asp:BoundField DataField =VehicleRagNoHeaderText =Vehicle RagNoHtmlEncode =true />

< asp:BoundFiel d DataField =ManufacturingDateDataFormatString ={0:dd'/'MM'/'yyyy}

HeaderText =制造日期HtmlEncode =true/>

< asp:BoundField DataField =PollutionValidDateDataFormatString ={0:dd'/'MM'/'yyyy}

HeaderText =污染日期HtmlEncode =true/ >

< asp:BoundField DataField =PermitDateDataFormatString ={0:dd'/'MM'/'yyyy}HeaderText =Permit Date

HtmlEncode =true/>

< asp:BoundField DataField =InsuranceDateDataFormatString ={0:dd'/'MM'/'yyyy}HeaderText =保险日期

HtmlEncode =true/>

< asp:BoundField DataField =FitnessdateDataFormatString ={0:dd'/'MM'/'yyyy} HeaderText =健身日期

HtmlEncode =true/>

< asp:BoundField DataField =SeatingCapacityHeaderText =CapacityHtmlEncode =true/>

< asp:BoundField DataField =VehicleFuelTypeHeaderText = 燃料类型HtmlEncode =true/>

< asp:BoundField DataField =AssociatedChargesHeaderText =ChargesHtmlEncode =true/>

< asp:BoundField DataField =TaxPaidHeaderText =TaxPaidHtmlEncode =true/>

< asp:BoundField DataField =ACNonACHeaderText =ACNonACHtmlEncode = true/>

< asp:BoundField DataField =PoliceVerificationHeaderText =Police VerificationHtmlEncode =true/>

< asp:BoundField DataField =DriverNameHeaderText =Driver NameHtmlEncode =true/>

< asp:BoundField DataField =DriverFatherNameHeaderText =Father NameHtmlEncode =true/> ;

< asp:BoundField DataField =DLIssuingAuthorityHeaderText =DL AuthorityHtmlEncode =true/>

< asp:BoundField DataField =DLDetailsHeaderText =DLDetailsHtmlEncode =true/>

< asp:BoundField DataField =DLValidFromDataFormatString ={0:dd'/'MM'/'yyyy}HeaderText =DLValidFrom

HtmlEncode =true/>

< asp:BoundField DataField =DLValidTillDataFormatString ={0:dd'/'MM'/'yyyy}HeaderText = DLValidTill

HtmlEncode =true/>

< asp:BoundField DataField =DriverEmploymentDurationDataFormatString ={0:dd'/'MM'/ 'yyyy}

HeaderText =就业日期HtmlEncode =true/>

< asp:BoundField DataField =MobileNoHeaderText =Mobile No HtmlEncode =true/>

< asp:BoundField DataField =PermanentAddressHeaderText =Driver AddressHtmlEncode =true/>

< asp:BoundField DataField =GpsStatusHeaderText =Gps StatusHtmlEncode = true/>

< asp:BoundField DataField =AlcoholAnalyzeHeaderText =Alcohol AnalyzeHtmlEncode =true/>

< asp: BoundField DataField =FireExtinguisherHeaderText =Fire ExtinguisherHtmlEncode =true/>

< asp:BoundField DataField =TyreConditionHeaderText =Tire ConditionHtmlEncode =true/ >

< asp:BoundField DataField =StephanyHeaderText =StephanyHtmlEncode =true/>

< asp:BoundField DataField =SeatBelt HeaderText =安全带HtmlEncode =true/>

< asp:BoundField DataField =SeatCoverHeaderText =座位封面HtmlEncode =true/>

< asp:BoundField DataField =CommentsHeaderText =RemarksHtmlEncode =true/>

< asp:BoundField DataField =BlacklistedHeaderText =StatusHtmlEncode =true />



< asp:Label ID =lblresultrunat =server/>

< asp:按钮ID =btnShowPopuprunat =serverStyle =display:none/>

< asp:ModalPopupExtender ID =ModalPopupExtender1runat =serverTargetControlID =btnShowPopup

PopupControlID =pnlpopupCancelControlID =btnCancelBackgroundCssClass =modalBackground>



< asp:Panel ID =pnlpopup ScrollBars =Bothrunat =serverBackColor =WhiteHeight =400px

Width =500pxStyle =display:none>



cellpadding =0cellspacing =0>

< td align =right> DL Authority:

align =center>

用户详细信息

UserId:

< asp:Label ID =lblIDrunat =server>

位置:

< asp:标签ID =lblLocationrunat =服务器>

供应商名称:

< asp:Label ID =txtVendorNamerunat =server>

车辆名称:

< asp:Label ID =txtVehicleNamerunat =server>

车辆注册号:

< asp:Label ID =txtVehicleRegNorunat =server>

制造日期:

< asp:TextBox ID =TextBoxMDrunat =server/>

< ajax:CalendarExtender ID =CalendarExtender1TargetControlID =TextBoxMDFormat =dd / MM / yyyy

runat =server>



污染日期:

< asp:TextBox ID =TextBoxPDrunat =server/>

< ajax:CalendarExtender ID =CalendarExtender2TargetControlID =TextBoxPDFormat =dd / MM / yyyy

runat =server>



许可日期:

< asp:TextBox ID =TextBoxPERDrunat =server/>

< ajax:CalendarExtender ID =CalendarExtender3TargetControlID =TextBoxPERDFormat =dd / MM / yyyy

runat =server>



<保险日期:

< asp:TextBox ID =TextBoxIDrunat =server />

< ajax:CalendarExtender ID =CalendarExtender4TargetControlID =TextBoxIDFormat =dd / MM / yyyy

runat =server> ;



健身日期:

< asp:TextBox ID =TextBoxFDrunat =服务器/>

< ajax:CalendarExtender ID =CalendarExtender5TargetControlID =TextBoxFDFormat =dd / MM / yyyy

runat =server >



警方核实:

<% - < asp:TextBox ID =TextBox6runat =server/> - %>

< asp:DropDownList ID =TextBoxPV AutoPostBack =truerunat =server>



司机名:

< ; asp:TextBox ID =TextBoxDNrunat =server/>

父姓名:

< asp:TextBox ID =TextBoxFNrunat =server/>

< asp:TextBox ID =TextBoxDArunat =server/>

DLDetails:

< asp:TextBox ID =TextBoxDD runat =server/>

DL有效期:

< asp:TextBox ID =TextBoxDVFrunat =server/>

< ajax:CalendarExtender ID =CalendarExtender6TargetControlID =TextBoxDVFFormat =dd / MM / yyyy

runat =server>



DL有效期:

< asp:TextBox ID =TextBoxDVTrunat =server/>

< ajax:CalendarExtender ID =CalendarExtender7TargetControlID =TextBoxDVTFormat =dd / MM / yyyy

runat =server>



就业日期:

< asp:TextBox ID =TextBoxED runat =server/>

< ajax:CalendarExtender ID =CalendarExtender8TargetControlID =TextBoxEDFormat =dd / MM / yyyy

runat = 服务器>



手机号码:

< asp:TextBox ID =TextBoxMNrunat =server/>

驱动程序地址:

< asp:TextBox ID =TextBoxRArunat =server/>

备注:

< asp:TextBox ID =TextBoxRrunat =server/>

状态:

< asp:DropDownList ID =TextBoxSAutoPostBack =truerunat =server>



< asp:Button ID =btnUpdateCommandName =Updaterunat =serverText = 更新OnClick =btnUpdate_Click/>

< asp:Button ID =btnCancelrunat =serverText =Cancel/>





< / form> < /体> < / html>

here is my code

updDate.UpdateBlackList(
lblID.Text,
Convert.ToDateTime(TextBoxMD.Text),
Convert.ToDateTime(TextBoxPD.Text),
Convert.ToDateTime(TextBoxPERD.Text),
Convert.ToDateTime(TextBoxID.Text),
Convert.ToDateTime(TextBoxFD.Text),
TextBoxPV.SelectedItem.Text,
TextBoxDN.Text,
TextBoxFN.Text,
TextBoxDA.Text,
TextBoxDD.Text,
Convert.ToDateTime(TextBoxDVF.Text),
Convert.ToDateTime(TextBoxDVT.Text),
Convert.ToDateTime(TextBoxED.Text),
TextBoxMN.Text,
TextBoxRA.Text,
TextBoxR.Text,
TextBoxS.SelectedItem.Text,
System.Environment.UserName,
DateTime.Now
);

What I have tried:

<asp:Content ID="Content1" ContentPlaceHolderID="head" runat="Server">

<asp:Content ID="Content2" ContentPlaceHolderID="ContentPlaceHolder1" runat="Server">
<asp:ToolkitScriptManager ID="ToolkitScriptManager1" runat="server">


Transport Blacklisted Compliance


<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<contenttemplate>
<asp:GridView ID="GridView1" class="table table-bordered table-condensed" AutoGenerateColumns="false"
EmptyDataText="No record found !!!" DataKeyNames="id" AllowPaging="true"
runat="server" PagerSettings-Mode="Numeric">
<rowstyle backcolor="#ffffff" font-size="11px" font-names="Verdana" forecolor="Black">
HorizontalAlign="Center" />
<HeaderStyle BackColor="DarkGray" Font-Size="11px" ForeColor="White" HorizontalAlign="Center" />
<alternatingrowstyle backcolor="White">
<columns> <asp:TemplateField HeaderText="Edit">
<itemtemplate>
<asp:ImageButton ID="imgbtn" ImageUrl="~/Edit.jpg" runat="server" Width="25" Height="25"
OnClick="imgbtn_Click" />


<asp:BoundField DataField="id" HeaderText="id" HtmlEncode="true" />
<asp:BoundField DataField="Location" HeaderText="Location" HtmlEncode="true" />
<asp:BoundField DataField="vendoName" HeaderText="Vendor" HtmlEncode="true" />
<asp:BoundField DataField="VehcleName" HeaderText="Vehcle" HtmlEncode="true" />
<asp:BoundField DataField="VehicleRagNo" HeaderText="Vehicle RagNo" HtmlEncode="true" />
<asp:BoundField DataField="ManufacturingDate" DataFormatString="{0:dd'/'MM'/'yyyy}"
HeaderText="Manufacturing Date" HtmlEncode="true" />
<asp:BoundField DataField="PollutionValidDate" DataFormatString="{0:dd'/'MM'/'yyyy}"
HeaderText="Pollution Date" HtmlEncode="true" />
<asp:BoundField DataField="PermitDate" DataFormatString="{0:dd'/'MM'/'yyyy}" HeaderText="Permit Date"
HtmlEncode="true" />
<asp:BoundField DataField="InsuranceDate" DataFormatString="{0:dd'/'MM'/'yyyy}" HeaderText="Insurance Date"
HtmlEncode="true" />
<asp:BoundField DataField="Fitnessdate" DataFormatString="{0:dd'/'MM'/'yyyy}" HeaderText="Fitness date"
HtmlEncode="true" />
<asp:BoundField DataField="SeatingCapacity" HeaderText="Capacity" HtmlEncode="true" />
<asp:BoundField DataField="VehicleFuelType" HeaderText="Fuel Type" HtmlEncode="true" />
<asp:BoundField DataField="AssociatedCharges" HeaderText="Charges" HtmlEncode="true" />
<asp:BoundField DataField="TaxPaid" HeaderText="TaxPaid" HtmlEncode="true" />
<asp:BoundField DataField="ACNonAC" HeaderText="ACNonAC" HtmlEncode="true" />
<asp:BoundField DataField="PoliceVerification" HeaderText="Police Verification" HtmlEncode="true" />
<asp:BoundField DataField="DriverName" HeaderText="Driver Name" HtmlEncode="true" />
<asp:BoundField DataField="DriverFatherName" HeaderText="Father Name" HtmlEncode="true" />
<asp:BoundField DataField="DLIssuingAuthority" HeaderText="DL Authority" HtmlEncode="true" />
<asp:BoundField DataField="DLDetails" HeaderText="DLDetails" HtmlEncode="true" />
<asp:BoundField DataField="DLValidFrom" DataFormatString="{0:dd'/'MM'/'yyyy}" HeaderText="DLValidFrom"
HtmlEncode="true" />
<asp:BoundField DataField="DLValidTill" DataFormatString="{0:dd'/'MM'/'yyyy}" HeaderText="DLValidTill"
HtmlEncode="true" />
<asp:BoundField DataField="DriverEmploymentDuration" DataFormatString="{0:dd'/'MM'/'yyyy}"
HeaderText="Employment Date" HtmlEncode="true" />
<asp:BoundField DataField="MobileNo" HeaderText="Mobile No" HtmlEncode="true" />
<asp:BoundField DataField="PermanentAddress" HeaderText="Driver Address" HtmlEncode="true" />
<asp:BoundField DataField="GpsStatus" HeaderText="Gps Status" HtmlEncode="true" />
<asp:BoundField DataField="AlcoholAnalyze" HeaderText="Alcohol Analyze" HtmlEncode="true" />
<asp:BoundField DataField="FireExtinguisher" HeaderText="Fire Extinguisher" HtmlEncode="true" />
<asp:BoundField DataField="TyreCondition" HeaderText="Tyre Condition" HtmlEncode="true" />
<asp:BoundField DataField="Stephany" HeaderText="Stephany" HtmlEncode="true" />
<asp:BoundField DataField="SeatBelt" HeaderText="Seat Belt" HtmlEncode="true" />
<asp:BoundField DataField="SeatCover" HeaderText="Seat Cover" HtmlEncode="true" />
<asp:BoundField DataField="Comments" HeaderText="Remarks" HtmlEncode="true" />
<asp:BoundField DataField="Blacklisted" HeaderText="Status" HtmlEncode="true" />

<asp:Label ID="lblresult" runat="server" />
<asp:Button ID="btnShowPopup" runat="server" Style="display: none" />
<asp:ModalPopupExtender ID="ModalPopupExtender1" runat="server" TargetControlID="btnShowPopup"
PopupControlID="pnlpopup" CancelControlID="btnCancel" BackgroundCssClass="modalBackground">

<asp:Panel ID="pnlpopup" ScrollBars="Both" runat="server" BackColor="White" Height="400px"
Width="500px" Style="display: none">

cellpadding="0" cellspacing="0">
align="center">
User Details
UserId:
<asp:Label ID="lblID" runat="server">
Location:
<asp:Label ID="lblLocation" runat="server">
Vendor Name:
<asp:Label ID="txtVendorName" runat="server">
Vehicle Name:
<asp:Label ID="txtVehicleName" runat="server">
Vehicle Reg No:
<asp:Label ID="txtVehicleRegNo" runat="server">
Manufacturing Date:
<asp:TextBox ID="TextBoxMD" runat="server" />
<ajax:CalendarExtender ID="CalendarExtender1" TargetControlID="TextBoxMD" Format="dd/MM/yyyy"
runat="server">

Pollution Date:
<asp:TextBox ID="TextBoxPD" runat="server" />
<ajax:CalendarExtender ID="CalendarExtender2" TargetControlID="TextBoxPD" Format="dd/MM/yyyy"
runat="server">

Permit Date:
<asp:TextBox ID="TextBoxPERD" runat="server" />
<ajax:CalendarExtender ID="CalendarExtender3" TargetControlID="TextBoxPERD" Format="dd/MM/yyyy"
runat="server">

Insurance Date:
<asp:TextBox ID="TextBoxID" runat="server" />
<ajax:CalendarExtender ID="CalendarExtender4" TargetControlID="TextBoxID" Format="dd/MM/yyyy"
runat="server">

Fitness date:
<asp:TextBox ID="TextBoxFD" runat="server" />
<ajax:CalendarExtender ID="CalendarExtender5" TargetControlID="TextBoxFD" Format="dd/MM/yyyy"
runat="server">

Police Verification:
<%--<asp:TextBox ID="TextBox6" runat="server" />--%>
<asp:DropDownList ID="TextBoxPV" AutoPostBack="true" runat="server">

Driver Name:
<asp:TextBox ID="TextBoxDN" runat="server" />
Father Name:
<asp:TextBox ID="TextBoxFN" runat="server" />
DL Authority:
<asp:TextBox ID="TextBoxDA" runat="server" />
DLDetails:
<asp:TextBox ID="TextBoxDD" runat="server" />
DL Valid From:
<asp:TextBox ID="TextBoxDVF" runat="server" />
<ajax:CalendarExtender ID="CalendarExtender6" TargetControlID="TextBoxDVF" Format="dd/MM/yyyy"
runat="server">

DL Valid Till:
<asp:TextBox ID="TextBoxDVT" runat="server" />
<ajax:CalendarExtender ID="CalendarExtender7" TargetControlID="TextBoxDVT" Format="dd/MM/yyyy"
runat="server">

Employment Date:
<asp:TextBox ID="TextBoxED" runat="server" />
<ajax:CalendarExtender ID="CalendarExtender8" TargetControlID="TextBoxED" Format="dd/MM/yyyy"
runat="server">

Mobile No:
<asp:TextBox ID="TextBoxMN" runat="server" />
Driver Address:
<asp:TextBox ID="TextBoxRA" runat="server" />
Remarks:
<asp:TextBox ID="TextBoxR" runat="server" />
Status:
<asp:DropDownList ID="TextBoxS" AutoPostBack="true" runat="server">

<asp:Button ID="btnUpdate" CommandName="Update" runat="server" Text="Update" OnClick="btnUpdate_Click" />
<asp:Button ID="btnCancel" runat="server" Text="Cancel" />


</form> </body> </html>

推荐答案

错误信息非常明确:

The error message is pretty explicit:
string was not recognized as a valid datetime.

基本上,您的用户输入以下其中一个文本框:

Basically, your user input in one of these textboxes:

TextBoxMD.Text
TextBoxPD.Text
TextBoxPERD.Text
TextBoxID.Text
TextBoxFD.Text
TextBoxDVF.Text
TextBoxDVT.Text
TextBoxED.Text

不被认为是您正在执行代码的系统的有效日期 - 服务器。

最有可能的原因是,用户输入错误,或者他使用的文化与服务器不同。< br $>


不要使用Convert.ToDateTime:使用DateTime.TryParse并向用户报告问题,而不是盲目地假设他总是会把它弄好。并使用客户端文化设置而不是服务器默认设置。



或者更好,不要使用文本框作为日期值:使用日历代替用户可以; t弄错了,你直接获取DateTime值,而不是完全转换它。

Is not recognised as a valid date for the system you are executing the code on - the server.
Most likely, that's because the user mistyped, or he is using a different culture than your server.

Don't use Convert.ToDateTime: use DateTime.TryParse and report problems to the user instead of blindly assuming he will always get it right. And use the Client culture settings instead of your Server default.

Or better, don't use text boxes for date values: use Calendars instead so the user can;t get it wrong, and you fetch the DateTime value directly instead of having to convert it at all.


问题解决使用



issue resolved by using

updDate.UpdateBlackList(
        lblID.Text,
        DateTime.ParseExact(TextBoxMD.Text, "dd/MM/yyyy", null),
        DateTime.ParseExact(TextBoxPD.Text, "dd/MM/yyyy", null),
        DateTime.ParseExact(TextBoxPERD.Text, "dd/MM/yyyy", null),
        DateTime.ParseExact(TextBoxID.Text, "dd/MM/yyyy", null),
        DateTime.ParseExact(TextBoxFD.Text, "dd/MM/yyyy", null),
        TextBoxPV.SelectedItem.Text,
        TextBoxDN.Text,
        TextBoxFN.Text,
        TextBoxDA.Text,
        TextBoxDD.Text,
        DateTime.ParseExact(TextBoxDVF.Text, "dd/MM/yyyy", null),
        DateTime.ParseExact(TextBoxDVT.Text, "dd/MM/yyyy", null),
        DateTime.ParseExact(TextBoxED.Text, "dd/MM/yyyy", null),
        TextBoxMN.Text,
        TextBoxRA.Text,
        TextBoxR.Text,
        TextBoxS.SelectedItem.Text,
        System.Environment.UserName,
        DateTime.Now


这篇关于尝试更新时,错误字符串未被识别为有效的日期时间。的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆