PDA

View Full Version : تبدیل تاریخ میلادی به شمسی



pedram_ns
سه شنبه 14 تیر 1390, 15:57 عصر
سلام
من قبلا با این تابع و در اکسس تاریخ میلادی رو شمسی می کردم ولی حالا که دیتابیس رو به اسکیوال تغییر دادم و نوع فیلد تاریخ وdate انتخاب کردم ارور زیر رو می ده چه تغییری باید صورت بگیره؟


BC30512: Option Strict On disallows implicit conversions from 'Object' to 'String'.

کد تابع:


Public Shared Function ShamsiDate(ByVal datetimes As String) As String
Dim dt As DateTime
If DateTime.TryParse(datetimes, dt) Then
Dim pc As New PersianCalendar()
Dim Year As String = pc.GetYear(dt).ToString()
Dim Month As String = pc.GetMonth(dt).ToString("D2")
Dim Day As String = pc.GetDayOfMonth(dt).ToString("D2")
Return Year & "/" & Month & "/" & Day
End If
Return "مشخص نیست"
End Function


کد درون گریدویو:


<asp:TemplateField HeaderText="تاریخ ارسال" SortExpression="send_date">
<ItemTemplate>
<asp:Label Text='<%# ShamsiDate(Eval("send_date")) %>' runat="server"></asp:Label>
</ItemTemplate>
</asp:TemplateField>

clover
سه شنبه 14 تیر 1390, 17:05 عصر
ورودی تابع به جای string باید بشه object و بعد داخل تابع با یه تبدیل نوع ساده بشه DateTime و دیگه نیازی به تابع DateTime.TryParse نیست.
متاسفانه با VB نمی تونم تغییرات را کد کنم.

موفق باشید