我的MVC 4应用程序出了问题。我有一个模型,代码如下:
public class MyModel
{
[Required]
[Display(Name = "Code")]
public string Code { get; set; }
[Display(Name = "Type")]
[DisplayFormat(NullDisplayText = "")]
public string Type { get; set; }
}
模型中的Code
字段表示数据库中的非可空类型,而Type
字段接受空值。现在我的问题出现了,当我尝试从模型加载项目并使用我的控制器进入我的视图。请参阅以下控制器代码:
public ActionResult Display(string Code)
{
MyManager manage= new MyManager();
Model model= new Model();
model = manage.GetItem(Code);
MyModel obj = new MyModel();
obj.Code = model.Code.Trim();
obj.Type = model.Type.Trim();
return View(obj);
}
基本上,GetItems方法来自我的经理,它接受Code
并返回Model类型的数据(这是我数据库中表的名称)。
问题指向此行:obj.Type = model.Type.Trim();
每当来自数据库的空值发生时。
有人可以指出我如何处理这个问题的有效方法吗?
答案 0 :(得分:2)
您可以尝试在复制到ViewModel对象之前检查数据库返回。
obj.Type = provider.Type != null ? provider.Type.Trim() : string.Empty;
答案 1 :(得分:0)
使用
public string? Type { get; set; }