如何在ASP.NET 5和EF7中的代码优先方法中设置可选字段

射线

我正在一个项目上,我想在代码优先方法中将一些属性设置为可选。在我的类文件中,我添加[Required]了一些属性,在SQL中我将其设置为不为null,而在SQL中不具有该属性的属性[Required]应设置为允许null,但对于其中包含ID的某些属性,在SQL中该属性设置为非null。下面是我的示例类,其中包含在数据库中生成表时应使用的属性。我想EnvironmentLastDeployedId在MSSQL中创建新数据库时属性设置为可选。

public class Version
{
    public int Id { get; set; }

    [Required]
    public string PackageName { get; set; }
    public string VersionName { get; set; }
    public string OriginalPackageName { get; set; }

    [Required]
    public string CommitID { get; set; }
    public string CommitMessage { get; set; }
    public int ApplicationId { get; set; }
    public Application Application { get; set; }
    public string CreatedBy { get; set; }
    public int EnvironmentLastDeployedId { get; set; }
    public Environment EnvironmentLastDeployed { get; set; }
    public int StatusId { get; set; }
    public Status Status { get; set; }
    public DateTime CreatedOn { get; set; }
    public DateTime ModifiedOn { get; set; }
}

在我的Context类文件中,我尝试使用Fluent API,但我只获取IsRequired方法,但没有获取方法,IsOptional或者使我可以设置表列以允许数据库中为null的东西。

protected override void OnModelCreating(ModelBuilder modelBuilder)
    {
        modelBuilder.Entity<Version>()
            .Property(p => p.EnvironmentLastDeployedId).IsRequired();
    }
Joaoruimartins

如果要为int允许使用空值,则只需使用int ?:

public int? ApplicationId { get; set; }

这将映射到SQL中的可为空的列,因此在尝试存储该列具有空值的记录时不会引发任何异常。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在asp.net core和ef7中的并行方法中使用注入的DbContext?

来自分类Dev

尝试在EF7和ASP.NET5中使用DbSet <TEntity> .Where()

来自分类Dev

如何在asp.net 5中设置Auth cookie

来自分类Dev

如何在ASP.NET中删除asp:calendar的“周末”?

来自分类Dev

如何在ASP .NET MVC EF中重命名链接表的db列(许多实现)(代码优先)

来自分类Dev

使用实体框架的代码优先方法在ASP.NET MVC应用程序中缺少外键关系

来自分类Dev

如何在ASP.NET Core中设置cookie validateInterval?

来自分类Dev

如何在ASP .NET Core 3.1中设置请求超时

来自分类Dev

如何在ASP.NET Core中设置默认区域?

来自分类Dev

如何在ASP.NET中设置默认参数

来自分类Dev

如何在ASP.NET中动态设置图像URL

来自分类Dev

如何在asp.net mvc 中设置Iframe src?

来自分类Dev

maxReceivedMessageSize 如何在 Asp.net Core Api 中设置?

来自分类Dev

如何在ASP.NET 5中注册OData

来自分类Dev

如何在ASP.NET 5中模拟UserManager

来自分类Dev

如何在ASP.NET 5中使用SignalR

来自分类Dev

如何在ASP.NET 5 MVC中访问缓存?

来自分类Dev

如何在ASP.Net 5中删除文件

来自分类Dev

如何在asp.net mvc 方法中读取cookie?

来自分类Dev

如何在ASP.NET MVC中重置会话超时

来自分类Dev

如何在Asp.net Core中缓存资源?

来自分类Dev

如何在IIS 8中重新注册ASP.NET?

来自分类Dev

我如何在ASP.NET MVC中隐藏div

来自分类Dev

如何在ASP.NET Web API中接收JSON?

来自分类Dev

如何在ASP.NET MVC中运行作业?

来自分类Dev

如何在ASP.NET MVC中配置HTML压缩

来自分类Dev

如何在asp.net的gridview中创建链接

来自分类Dev

如何在asp.net中调用高图

来自分类Dev

如何在ASP.NET MVC中组织DAL

Related 相关文章

热门标签

归档