我假设我非常接近。我有一个值StartedAgent
,它将包含用户输入的特定日期。让我们说他们进入“1/1/1985”然后我想创建一个计算的属性,我可以用来显示自该代理商首次开始在房地产工作多少年。以下是我的课。我试图对它进行一次尝试,但是我的时间很短。我正在使用MVC 5,EF 6& .Net 4.5的C#。
namespace OrlandoAppraiser.Models
{
public class Appraiser
{
public int AgentID { get; set; }
public string Name { get; set; }
public string LicenseNum { get; set; }
public DateTime StartedAgent { get; set; }
public string YearsAsAgent
{
get { return (Math.Floor((DateTime.Now - StartedRealEstate).TotalDays / 365.25D)); }
}
}
}
我已经看了一些不同的答案,但是我在查找计算属性中这么简单的方法时遇到了麻烦。我知道它应该没那么大不同,但我的代码出错了。
答案 0 :(得分:2)
这是一种非常简单的方法。如果属性是字符串,请务必调用ToString()
。
public string YearsAsAgent
{
get { return (DateTime.Now.Year - StartedRealEstate.Year).ToString(); }
}
答案 1 :(得分:0)
这应该有所帮助。 this的修改版本。
DateTime _startedRealEstate = new DateTime(2012, 11, 15);
public DateTime StartedRealEstate { get { return _startedRealEstate; } set { _startedRealEstate = value; } }
public int YearsAsAgent
{
get
{
DateTime zeroTime = new DateTime(1, 1, 1);
TimeSpan span = DateTime.Now - StartedRealEstate;
int years = (zeroTime + span).Year - 1;
return years;
}
}
private void button1_Click_2(object sender, EventArgs e)
{
int totalYears = YearsAsAgent;
}