如何使DateTime字段在本地SQL数据库中可为空

时间:2014-06-27 11:51:21

标签: c# sql asp.net-mvc-4 datetime

我正在处理我的ASP.NET MVC 4项目,并且我遇到了由我的本地数据库引起的问题。我在那里有几张桌子,其中一张桌子我有" DateTime"类型字段。我希望不需要那个字段,所以我已经设置了#34;允许Nulls"表格设计师视图中的选项为" true"。我还在该表中添加了一些数据,实际上我并没有在那个" DateTime"中输入值。字段。

当我运行我的应用并尝试打开我的表中的数据应该出现的视图时,我收到一个错误:"' DateFrom'物业上的人物'无法设置为' null'值。您必须将此属性设置为类型为'日期时间''"

的非空值

有人可以帮我解决这个问题吗?

PS:我使用VisualStudio 2012 Ultimate并在c#中编程

我使用代码优先方法创建了数据库:

这是一个人的类:

using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.ComponentModel.DataAnnotations;

namespace PersonuRegistrs.Models

    {
        public class Persona
        {
            [Key]
            [Required]
            public int PersonaId { get; set; }

            public FiziskaPersona FiziskaPersona { get; set; }

            public JuridiskaPersona JuridiskaPersona { get; set; }

            [DisplayFormat(NullDisplayText="-")]
            public string IdentifikacijasNumurs { get; set; }

            public bool IrPrezidents { get; set; }

            public double Ien_Likme { get; set; }

            [DisplayFormat(NullDisplayText="-")]
            public DateTime IenSpekaNo { get; set; }

            [DisplayFormat(NullDisplayText = "-")]
            public DateTime IenSpekaLidz { get; set; }

            public bool IrMaksatnespejiga { get; set; }

            public Adrese Adrese { get; set; }

            public bool SanemtApkartparakstu { get; set; }

            [Required]
            public IerakstaStatuss IerakstaStatuss { get; set; }

            public List<Strukturvieniba> PersonasStrukturvienibas { get; set; }
        }
    }

以下是该表的设计者视图: enter image description here

enter image description here

1 个答案:

答案 0 :(得分:1)

这不是数据库问题。在Person类中,将DateFrom属性从DateTime更改为DateTime?。这将使其可以为空。