0

所以我在前端有这个:

<%= Html.DropDownListFor(m => m.FixedComponent.PaymentBusinessDayConvention, DropDownData.BusinessDayConventionList(), "", new { @class = "DontShrink", propertyName = "FixedComponent.PaymentBusinessDayConvention", onchange = "UpdateField(this);" })%>

DropDownData.BusinessDayConventionList()这里定义:

public static SelectList BusinessDayConventionList()
        {
            return ListBuilder(
                BusinessDayConventionHelper.GetFriendlyName(BusinessDayConvention.Following),
                BusinessDayConventionHelper.GetFriendlyName(BusinessDayConvention.ModifiedFollowing),
                BusinessDayConventionHelper.GetFriendlyName(BusinessDayConvention.Preceding),
                BusinessDayConventionHelper.GetFriendlyName(BusinessDayConvention.Unadjusted));
        }

我想删除BusinessDayConvention.Unadjusted一个 HTML Helper 的选项,而不是页面上所有其他的选项。我怎样才能干净地做到这一点?

谢谢!

4

1 回答 1

0

在方法中包含一个参数:

    public static SelectList BusinessDayConventionList(bool includeUnadjusted)
    {
       var list = ListBuilder(
            BusinessDayConventionHelper.GetFriendlyName(BusinessDayConvention.Following),
            BusinessDayConventionHelper.GetFriendlyName(BusinessDayConvention.ModifiedFollowing),
            BusinessDayConventionHelper.GetFriendlyName(BusinessDayConvention.Preceding));

       if (includeUnadjusted)
       {
         list.Items.Add(BusinessDayConventionHelper.GetFriendlyName(BusinessDayConvention.Unadjusted))
       }

       return list.
    }

您还可以使用重载来传递默认值:

    public static SelectList BusinessDayConventionList()
    {
       return BusinessDayConventionList(true);
    }
于 2011-01-28T21:52:36.417 回答