LinqDataSource - 是否可以使用dbnull值的默认插入参数?

时间:2010-10-11 17:40:43

标签: asp.net data-binding default-value linqdatasource

我需要在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 Datetime溢出错误,因为它试图将值插入到Created和Modified中,即使我没有将这些字段绑定到这些字段。

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

1 个答案:

答案 0 :(得分:0)

我可能没有正确地阅读你的问题,但是如果约束不允许NULL值,它就不会起作用。