sql-server-2005 - Linq-to-SQL 忽略 SQL Server 默认值

标签 sql-server-2005 linq-to-sql

当使用 Linq-to-SQL、向现有表添加列并在该新列上设置默认值时,Linq to SQL 似乎会忽略默认值。 还有其他人经历过这种行为吗?有没有办法修复它,以便 Linq-to-SQL 或 SQL Server 自动设置默认值?

我添加的列的类型为 Bit,默认值设置为 1。

最佳答案

我现在已经通过使用 this blog 中的示例明确解决了这个问题.

partial void OnCreated() {
    if (this.DateTimeCreated == null) {
           this.DateTimeCreated = DateTime.Now;
    }
}

我需要将其传递到部分数据上下文类中,因为每次您在 dbml 中更改某些内容时,默认的数据上下文类都会被自动覆盖。

关于sql-server-2005 - Linq-to-SQL 忽略 SQL Server 默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1120858/

相关文章:

sql-server - 通过查询 Sql Server 2005 将位类型转换为 Yes 或 No

java - 连接到 Microsoft SQL Server 2005 中的数据库引擎

sql-server-2005 - SELECT *(除了身份)FROM

sql-server - SQL Server sp_msforeachtable 用法仅选择满足某些条件的表

c# - 将 Linq To Sql Binary 字段设置为 null

sql-server - 当主键 Id 超过限制时会发生什么?

sql-server - 应为 LinqToSql 授予 SQL Server 用户哪些权限?

linq-to-sql - 如何在不将 IQueryable 暴露给我的应用程序的其余部分的情况下编写一个干净的存储库?

Linq to SQL & 逻辑分区 (DAL, BLL)

c# - foreach 循环在具有多条记录的 Linq 查询后仅返回第一条记录