Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net mvc 如何在MVC中向强类型视图添加字符串文本_Asp.net Mvc_Asp.net Mvc 2 - Fatal编程技术网

Asp.net mvc 如何在MVC中向强类型视图添加字符串文本

Asp.net mvc 如何在MVC中向强类型视图添加字符串文本,asp.net-mvc,asp.net-mvc-2,Asp.net Mvc,Asp.net Mvc 2,如何在MVC中向强类型视图添加字符串文本,例如,我得到: <div class="editor-field"> <%: Html.TextBoxFor(model => model.productWebsite, new { style = "width:300px;" })%> <%: Html.ValidationMessageFor(model => model.productWebsite)%>

如何在MVC中向强类型视图添加字符串文本,例如,我得到:

<div class="editor-field">
            <%: Html.TextBoxFor(model => model.productWebsite, new { style = "width:300px;" })%>
            <%: Html.ValidationMessageFor(model => model.productWebsite)%>
        </div>

model.productWebsite,新的{style=“width:300px;“})%%>
model.productWebsite)%>
我想将“http://”添加到
model.productWebsite
,这样当用户在tryupdatemodel上写入
www.abc.com
时,它应该另存为数据库中。
我试着做一些类似的事情:
“http://”+model.productWebsite,新的{style=“width:300px;“})%>
,但它不起作用。

您必须在控制器内自己做-您可以使用


此外,请尝试在模型中使用属性标记您的属性。

您必须在控制器中自己进行标记-您可以使用


此外,请尝试在模型中使用属性标记属性。

对于此问题,只需修改属性本身即可:

private string _productWebsite;
public string ProductWebstring
{
  get { return _productWebsite; }
  set 
  {
    _productWebsite = value;
    if (!string.IsNullOrEmpty(_productWebsite) && !_productWebsite.StartsWith("http"))
    {
      _productWebsite = "http://" + _productWebsite;
    }
  }

对于此问题,只需修改属性本身即可:

private string _productWebsite;
public string ProductWebstring
{
  get { return _productWebsite; }
  set 
  {
    _productWebsite = value;
    if (!string.IsNullOrEmpty(_productWebsite) && !_productWebsite.StartsWith("http"))
    {
      _productWebsite = "http://" + _productWebsite;
    }
  }

当然,当模型更新时,您应该在控制器中处理这个问题

像这样:

public ActionResult Update(ModelClass model)
{
    if (!model.productWebsite.StartsWith("http://")
{
    model.productWebsite = "http://" + model.productWebsite 
}

}

当然,当模型更新时,您应该在控制器中处理这个问题

像这样:

public ActionResult Update(ModelClass model)
{
    if (!model.productWebsite.StartsWith("http://")
{
    model.productWebsite = "http://" + model.productWebsite 
}

}

你的答案一针见血,在你的模型中做。但是它们的实现有点错误,如果您有一个
https
链接,或者不太常见的
ftp
链接,该怎么办

我建议

if (!model.productWebsite.Contains("://"))
{
    model.productWebsite = string.format("http://{0}", model.productWebsite);
}

这将检查协议后缀,如果不存在,则会附加默认值
http

如果您的答案一针见血,请在您的模型中执行此操作。但是它们的实现有点错误,如果您有一个
https
链接,或者不太常见的
ftp
链接,该怎么办

我建议

if (!model.productWebsite.Contains("://"))
{
    model.productWebsite = string.format("http://{0}", model.productWebsite);
}

这将检查协议后缀,如果不存在,则按照Mike的建议在模型上附加默认值
http

。可能更好。D'oh.但是它的类型视图很强,所以我无法使用表单集合获取值。这不处理
https
或其他协议。我已经留下了一个答案。或者像迈克建议的那样在模型上。可能更好。D'oh.但是它的类型视图很强,所以我无法使用表单集合获取值。这不处理
https
或其他协议。我留下了一个答案。我应该在模型中的哪里定义这个属性。视图强类型化到的模型。我应该在模型中的何处定义此属性。视图强类型化到的模型。