1

我需要在 ASP.Net 页面上做一些简单的(或者看起来)数据绑定和 CRUD 类型操作。我正在使用与 FormView 连接的 LinqDataSource。我试图插入的表具有这些字段的默认约束:

[Created] [datetime] NOT NULL
[CreatedBy] [nvarchar](50) NOT NULL
[Modified] [datetime] NOT NULL
[ModifiedBy] [nvarchar](50) NOT NULL

ALTER TABLE [dbo].SolutionComponent ADD  CONSTRAINT [DF_SolutionComponent_Created]  DEFAULT (getdate()) FOR [Created];
ALTER TABLE [dbo].SolutionComponent ADD  CONSTRAINT [DF_SolutionComponent_CreatedBy]  DEFAULT (suser_sname()) FOR [CreatedBy];
ALTER TABLE [dbo].SolutionComponent ADD  CONSTRAINT [DF_SolutionComponent_Modified]  DEFAULT (getdate()) FOR [Modified];
ALTER TABLE [dbo].SolutionComponent ADD  CONSTRAINT [DF_SolutionComponent_ModifiedBy]  DEFAULT (suser_sname()) FOR [ModifiedBy];

执行插入时,我收到 SQL 日期时间溢出错误,因为它试图将值插入 Created 和 Modified,即使我没有将任何内容绑定到这些字段。

我的问题是如何让 LinqDataSource 在插入语句中省略这些字段,或者至少提供 dbnull 或 null 以允许数据库级别的默认值接管?

4

1 回答 1

0

我可能没有正确阅读您的问题,但如果约束不允许 NULL 值,它将无法正常工作。

于 2010-10-11T17:46:01.827 回答