我們每天在我們的解決方案中都這樣做,這根本不是問題。以下是我們的一個模型僅作爲示例:
public class ClassifiedAd : BaseModel
{
[Key]
[Editable(false)]
public int? ClassifiedAdID { get; set; }
[Required(ErrorMessage = "Required!")]
public int? UserID { get; set; }
[Required(ErrorMessage = "Required!")]
public int? ClassifiedAdCategoryID { get; set; }
[Required(ErrorMessage = "Required!")]
[StringLength(15, ErrorMessage = "Limited to 15 characters!")]
[RegularExpression(RegularExpressions.USPhone, ErrorMessage = "Must be a valid phone number!")]
public string Phone { get; set; }
[Required(ErrorMessage = "Required!")]
[RegularExpression(RegularExpressions.SafeAlphaNumeric, ErrorMessage = "Only letters, numbers, dashes and underscores are allowed!")]
[StringLength(100, ErrorMessage = "Limited to 100 characters!")]
public string AddTitle { get; set; }
}
正如您所看到的,我們對所有模型屬性使用可爲空的類型。但是,這不會導致您描述的任何問題。在我們看來,我們有:
@Html.HiddenFor(model => model.ClassifiedAdID)
@Html.HiddenFor(model => model.UserID)
和一切地圖和工作正常。我不確定是什麼導致了你的問題(需要查看你的整個代碼才能發現),但我認爲你需要在這裏看看其他的可能性。你使用的是什麼版本的MVC?
你是對的,可能我的更新在你的迴應時間不可用,這是已經存在的項目導致了這種行爲(請參閱我的回答),花了我很多時間,直到我找出來,但你是100%正確。謝謝 –