asp.net EF model中的默认值设置

  在做数据库规划时,通常会规划一些系统字段,也就是由数据库本身自行指定默认值到这个字段上,创建新的“创建时间(CreateDate)”字段就会常常这样设计。

 如果希望能有默认值,且让.net 程序在新增信息到数据库时不用指定的值的话,那么你需要在你的该属性(property)上面加上一个DatabaseGenerated属性(Attribute),并传入DatabbaseGeneratedOption.Computed参数到DatabaseGenerated 属性中。

在调用DatabaseGenerated属性时记得提前引用命名空间 System.ComponentModel.DataAnnotations, 

System.ComponentModel.DataAnnotations.Schema;

具体实现如下:



using System;
using System.Collections.Generic;
using System.Linq;
using System.ComponentModel.DataAnnotations;
using System.ComponentModel.DataAnnotations.Schema;
namespace Artech.VM.Models
{
public class MovieInfo
{
     

    [DatabaseGenerated(DatabaseGeneratedOption.Computed)]
    public DateTime? CreateDate { get; set; }
}

}


当然当你模型生成成功之后你会看到数据库是没有设置默认值的,因为EF的ORM是不支持设置默认值的,要设置的话,也只能手动添加上去,EF今后应该也不会添加此功能,因为为了减少.net 原生对象与数据库数据之间转换的变量,当模型的数据来自于数据库自动生成数据时,就很有可能会导致.net对象状态无法追踪的情况。所以在使用Entity FrameWrok时候是无法指定数据库中的默认值的。

 

转载于:https://www.cnblogs.com/yiliuyang/p/4253264.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
很高兴听到你对ASP.NET EF+MVC2实战的兴趣。以下是一些建议,希望对你有所帮助。 首先,ASP.NET是一个基于Web的应用程序框架,它提供了一种创建Web应用程序的高效且灵活的方式。在ASP.NET,MVC(模型-视图-控制器)是一种常用的架构模式,它将应用程序分为三个部分:模型(数据层)、视图(用户界面)和控制器(管理业务逻辑)。使用MVC可以提高应用程序的可扩展性、可维护性和可测试性。 其次,EF实体框架)是.NET框架的一个ORM(对象关系映射)工具,它可以将数据库的数据映射到.NET对象上,从而使开发人员能够使用面向对象的方式来操作数据库。使用EF可以简化数据库访问和数据持久化的过程,同时还可以提高代码的可读性和可维护性。 最后,MVC2是ASP.NET MVC框架的一个版本,它是基于.NET Framework 3.5开发的,提供了一种更加简单和易于使用的方法来创建Web应用程序。 接下来,我会给出一些学习ASP.NET EF+MVC2实战的建议: 1. 学习ASP.NET MVC框架的基本概念和原理,理解MVC架构模式的优点和使用方式。 2. 学习EF框架的基本概念和原理,掌握EF的常用API和技巧。 3. 学习ASP.NET MVC2框架的基本概念和原理,理解MVC2框架的新特性和改进。 4. 实践ASP.NET EF+MVC2项目,比如创建一个简单的博客应用程序或在线商店应用程序。 5. 使用Visual Studio等开发工具进行调试和测试,学习如何使用调试工具来诊断和解决问题。 6. 参加ASP.NET社区和开发者论坛,与其他开发者交流经验和技巧。 希望这些建议能对你有所帮助,祝你学习愉快!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值