gpt4 book ai didi

c# - 使用编辑器模板处理可空类型

转载 作者:太空狗 更新时间:2023-10-30 00:00:21 24 4
gpt4 key购买 nike

我开发了一个采用 bool 类型并创建下拉列表的编辑器模板,以更改 truefalse默认值,变成SiNo .现在,当我部署应用程序时,我没有意识到 booleanNullable<boolean>与我的编辑器模板 (boolean.cshtml) 的名称相同并受到影响。现在我不想要这个,我想修改 editorfor 的行为,仅当模型的数据类型为 Nullable<boolean> 时不是当它是 bool 值时。我该如何处理???

 @model Nullable<bool>

@{
var listItems = new[]
{
new SelectListItem { Value = "true", Text = "Si" },
new SelectListItem { Value = "false", Text = "No" }
};

}


@Html.DropDownListFor( model => model.Value, listItems)

最佳答案

您无法阻止他们使用相同的编辑器模板。但是您可以在编辑器模板中处理它。你有:

ViewData.ModelMetadata.IsNullableValueType

如果您阅读了这篇文章,您实际上可以看到默认模板是如何使用它来在两种不同的渲染之间切换的。只是从中窃取:

http://bradwilson.typepad.com/blog/2009/10/aspnet-mvc-2-templates-part-3-default-templates.html

关于c# - 使用编辑器模板处理可空类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7760599/

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