加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 为传递给Partial View的模型设置默认值

发布时间:2020-12-15 22:02:44 所属栏目:百科 来源:网络整理
导读:我有一个局部视图,从另一个局部视图(一种嵌套的局部视图)调用. 外部局部视图称为Company,内部局部视图是名为searchHelp的自定义控件.两者都接受参数. 现在,Company视图获取了company类型的参数,searchHelper接受可选字符串.这部分工作正常,因为我正在测试nul
我有一个局部视图,从另一个局部视图(一种嵌套的局部视图)调用.

外部局部视图称为Company,内部局部视图是名为searchHelp的自定义控件.两者都接受参数.

现在,Company视图获取了company类型的参数,searchHelper接受可选字符串.这部分工作正常,因为我正在测试null的模型值,并且当在其他视图中使用时,即使不传递参数,也将默认文本分配为@((Model == null)?“输入文本”:模型).

在我的嵌套视图的情况下,如果我不提供字符串作为searchHelper的模型,那么它将公司作为外部视图中的模型,即公司,并给出错误.

解决方法

您可以在视图中调用它的位置为字符串模型分配默认值:

//null coalesce to default string value:
@Html.Partial("searchHelp",Model.searchHelp ?? "default value")

…虽然您可以使用htmlhelper做得更好,您可以在其中定义默认值一次:

public IHtmlString SearchHelp(this HtmlHelper html,string searchHelp = "default value")
{
    // make html here
}

然后

@Html.SearchHelp(Model.searchHelp);

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读