PDA

View Full Version : DateTime



Rain_Song
دوشنبه 12 مرداد 1388, 14:02 عصر
سلام ... من می خواستم با استفاده از DateTime در قالب یه تابع سال ماه و روز رو بگیرم اما وقتی از کد زیر استفاده کردم error زیر رو داد :
Property or indexer 'System.DateTime.Month' cannot be assigned to -- it is read only
این هم از کد :


staticDateTime D = newDateTime();

که قبل از main نوشتم و کد زیر که می خوام در قالب یه تابع در صفحه ی console سال رو بگیرم :


D.Year = int.Parse(Console.ReadLine());

باید چی کار کنم که به قسمت دوم این error رو نده ؟؟

hozouri
دوشنبه 12 مرداد 1388, 14:20 عصر
دوست عزیز خطای بالا برای ماه است ولی شما سال رو مقدار دهی می کنید ...
فکر نمی کنید کد ها ناقص هستند ...

bahar_engineer
دوشنبه 12 مرداد 1388, 14:20 عصر
شما نمی تونید از datetime مستقیم سال رو دریافت کنین باید اینطوری بنویسید

D = DateTime.Now; یعنی زمان جاری سیستم رو در نظر بگیر ...

بعد دستور consol رو بنویسید ...

بعد که دستور می دین D.year اون وقت سال رو برای شما نمایش می ده (سال جاری)

Rejnev
دوشنبه 12 مرداد 1388, 14:25 عصر
فکر میکنم باید بنویسی:


D.AddYear(console...)

خاصیت year فقط خواندنیست

Salar Ashgi
دوشنبه 12 مرداد 1388, 14:33 عصر
D.Year = int.Parse(Console.ReadLine());



سلام ، در مورد Date Time فیلد های Year,Month,Day,... بصورت Read Only هستند ، یعنی

فقط امکان دسترسی به آنها وجود دارد و نمی توان آنها را ویرایش کرد !!!

میتونید از تابع سازنده خود آبجکت استفاده کنید :



DateTime dt = new DateTime(2009, 8, 3, 0, 0, 0, 0);


موفق و پیروز باشید !!!

farhaneh
دوشنبه 12 مرداد 1388, 15:57 عصر
دوست من ، اگه میخوای روز و ماه و سال رو از کاربر بگیری و به عنوان پارامتر به date time بفرستی باید date time رو اینطوری فراخوانی کنی:
Date Time=new Date Time(year,month,day که پارامتر های داخل پرانتز رو از کاربر میگیری.
فکر کنم یه نگاه به این کد به دردت بخوره.
int a,b,c ;
Console.WriteLine("enter year");
a=int.Parse(Console.ReadLine());
Console.WriteLine("month");
b = int.Parse(Console.ReadLine());
Console.WriteLine("day");
c = int.Parse(Console.ReadLine());
DateTime dt = new DateTime(a,b,c);
Console.WriteLine(dt.Year.ToString());
Console.WriteLine(dt.Month.ToString());
Console.WriteLine(dt.Day.ToString());
Console.ReadLine();