2017-04-12 30 views
0

我对这个问题做了一些研究,但没有什么东西接近我的困难。在不需要(可为空)的字段上需要的消息错误

这里是我的SQL:

CREATE TABLE [dbo].[Departement] (
[IdDepartement] INT   IDENTITY (1, 1) NOT NULL, 
[Description] NVARCHAR (255) NOT NULL, 
[IsActif]  BIT   NULL, 
PRIMARY KEY CLUSTERED ([IdDepartement] ASC) 
); 

正如你所看到的,IsActif为空。

这里是我的Departement.cs的一部分:

public Nullable<bool> IsActif { get; set; } 

再次,一切都是正常空。

这里是我的元数据的一部分(用于在数据库更新不松动的注释):

[UIHint("YesNo")] 
public Nullable<bool> IsActif { get; set; } 

尽管如此,性质的可空力,没有 [必填]! (如果有人想知道什么是UIHint:它连接到DisplayTemplate,它只是很好地显示了我的位值)。

只是为了好奇,因为我觉得我的问题不会完整,如果我不把所有的东西放在这里。这里是我的Ui提示:

@model Nullable<bool> 

@if (Model.HasValue) 
{ 
    if (Model.Value) 
    { <text>Oui</text> } 
    else 
    { <text>Non</text> } 
} 
else 
{ <text>Indéfini</text> } 

它清楚地表明,如果模型有价值ON可空!

但是,这是我所得到的,当试图创建一个新的部门: which means 'the field IsActif is required.'

有人有一个想法是怎么回事?我所有其他可空的布尔运算完美无缺。是否有我忘记看的地方?下一步是什么? 如果有人有一个想法,请让我知道。我确实让我的电脑做这项工作,但我现在要吃了。

在此先感谢。

编辑

过失:Oooooooooh,所以我想死。我只是意识到我正在使用ViewModel,我应该在那里检查。就在那里,罪魁祸首是用一个恶魔般的笑脸看着我。我为这个新手错误和我的惩罚感到抱歉,我会关闭这个问题并将其标记为已回答,并留在这里让大家嘲笑我,以防万一另一名新手也有同样的问题。我仍然不明白为什么我的其他可空布尔值工作,虽然他们处于相同的情况,虽然...

+0

Woshooo

+0

您是否在服务器端验证之后获得该消息?或者在您提交数据之前?向我们展示使用'IsActif'的表单和控制器操作。 – Jasen

+0

@Woshooo?!?我很抱歉,我不明白你的意思。我不希望这个字段是必需的。 –

回答

0

只要去看看我的编辑。我在这里重复它太可耻了。无论如何,感谢那些花时间添加评论的人,尤其是Jasen。

在大:

EmployeViewModel 以前

public bool IsActif { get; set; } 

EmployeViewModel

public Nullable<bool> IsActif { get; set; } 

现在我必须隐藏自己在地毯下面。

相关问题