gpt4 book ai didi

c# - 为传递给局部 View 的模型设置默认值

转载 作者:行者123 更新时间:2023-11-30 12:45:51 25 4
gpt4 key购买 nike

我有一个从另一个局部 View (一种嵌套的局部 View )调用的局部 View 。

外部局部 View 称为 Company,内部局部 View 是一个名为 searchHelp 的自定义控件。两者都接受一个参数。

现在 Company View 获得一个类型为 company 的参数并且 searchHelper 接受一个可选字符串。这部分工作正常,因为我正在测试 null 的模型值并且分配默认文本为 @((Model==null)?"Enter Text":Model) 在其他 View 中使用时即使没有通过一个参数。

在我的嵌套 View 的情况下,如果我不提供字符串作为 searchHelper 的模型,那么它会将 company 作为外部 View (即公司)的模型并给出错误。

最佳答案

@model 定义不是一个值 setter ,它只是告诉 Razor 要实例化哪种类型的 View 。您不能在此处定义默认值。如果您不将模型传递给局部 View ,那么它将使用父 View 的模型,在本例中为 CompanyCompany 显然不是字符串,因此您会收到该错误。如果您想为部分传递默认值,请在 Html.Partial 的第二个参数中执行此操作:

@Html.Partial("searchHelp", Model.SomeStringProperty ?? "Enter Text")

关于c# - 为传递给局部 View 的模型设置默认值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22610468/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com