【发布时间】:2019-12-02 15:24:18
【问题描述】:
我想让用户通过类和 DateTime 方法输入日期和时间。起初我想让用户只输入一个没有时间的雇用日期。
Console.Write("Please enter date Of hire");
DateTime dateOfHire = DateTime.Parse(Console.ReadLine());
然后将dateOfHire 发送到另一个类中的方法,方法是:
public DateTime DateOfHire
{
set { }
get
{
Console.WriteLine( dateOfHire.ToString("D")); // output: 24, december 2042
}
}
我在get{} 中遇到错误,因为我必须使用return 我该如何使用它?如果我写
return dateOfHire.ToString("D"); 我也报错了。
【问题讨论】:
-
DateOfHire 属性的返回类型是 DateTime 并且您正在返回字符串。您应该仔细检查编译器错误,它应该足以说明问题所在。
-
在属性 getter 中进行用户 IO 可能不是一个好主意
-
@gp。错误消息是:“Employee.DateOfHire.get”:并非所有代码路径都返回值
-
您正在尝试创建一个属性,但您的 setter 没有执行任何操作,并且您的 getter 没有返回任何内容。我建议您查看 C# 中的哪些属性 - docs.microsoft.com/en-us/dotnet/csharp/programming-guide/…
-
如果您只想打印给定日期,请在您的类中创建一个静态方法,例如
public static void PrintDate(DateTime date)并将您的WriteLine语句放入其中。