我對這個問題做了一些研究,但沒有什麼東西接近我的困難。在不需要(可爲空)的字段上需要的消息錯誤
這裏是我的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,我應該在那裏檢查。就在那裏,罪魁禍首是用一個惡魔般的笑臉看着我。我爲這個新手錯誤和我的懲罰感到抱歉,我會關閉這個問題並將其標記爲已回答,並留在這裏讓大家嘲笑我,以防萬一另一名新手也有同樣的問題。我仍然不明白爲什麼我的其他可空布爾值工作,雖然他們處於相同的情況,雖然...
– Woshooo
您是否在服務器端驗證之後獲得該消息?或者在您提交數據之前?向我們展示使用'IsActif'的表單和控制器操作。 – Jasen
@Woshooo?!?我很抱歉,我不明白你的意思。我不希望這個字段是必需的。 –