Warum schlägt dieser Komponententest beim Testen der DateTime-Gleichheit fehl?

Mit NUnit 2.2 unter .NET 3.5 schlägt der folgende Test fehl, wenn DateTime.Equals verwendet wird. Warum

[TestFixture]
public class AttributeValueModelTest
{
    public class HasDate
    {
        public DateTime? DateValue
        {
            get
            {
                DateTime value;
                return DateTime.TryParse(ObjectValue.ToString(), out value) ? value : new DateTime?();
            }
        }

        public object ObjectValue { get; set; }
    }

    [Test]
    public void TwoDates()
    {
        DateTime actual = DateTime.Now;
        var date = new HasDate {ObjectValue = actual};
        Assert.IsTrue(date.DateValue.Value.Equals(actual));
    }
}

Antworten auf die Frage(10)

Ihre Antwort auf die Frage