这是我必须用新内容“更新”数据库并且我用纯HTML打印它,但当我把它放入数据库时,它已经分配了HTML,所以它决不会抛出它进入数据库
[HttpPost]
[ValidateInput(false)]
public ActionResult index(IndholdViewModel model)
{
if (ModelState.IsValid)
{
var forsideindhold = db.forsides.FirstOrDefault(i => i.Id == 1);
if (forsideindhold != null)
{
//error here
forsideindhold.tekst = new HtmlString(model.Indhold);
.SubmitChanges();
return RedirectToAction("index/Opdater");
}
}
return View();
}
此处发生错误:
forsideindhold.tekst = new HtmlString(model.Indhold);
我只能想象这是它删除了我的model.indhold所持有的HTML并将其扔进数据库。
错误是:
无法从'System.Web.HtmlString'转换为'string'
答案 0 :(得分:0)
您的问题是,您无法转到HtmlString
构造函数HtmlString
。
但实际上,只要forsideindhold.tekst
为string
,我就无法理解为什么需要它。你应该这样写:
forsideindhold.tekst = model.Indhold.ToString();
或者:
forsideindhold.tekst = new HtmlString(model.Indhold.ToString()).ToString();
答案 1 :(得分:0)
在插入模型之前检查您的值是否为空。
if(!string.IsNullOrWhiteSpace(model.Indhold)) forsideindhold.tekst = new HtmlString(model.Indhold.ToString()).ToString();