diff --git a/src/Microsoft.AspNetCore.Mvc.Abstractions/ModelBinding/ModelMetadata.cs b/src/Microsoft.AspNetCore.Mvc.Abstractions/ModelBinding/ModelMetadata.cs index ec478c7b02..f0abc8f4a5 100644 --- a/src/Microsoft.AspNetCore.Mvc.Abstractions/ModelBinding/ModelMetadata.cs +++ b/src/Microsoft.AspNetCore.Mvc.Abstractions/ModelBinding/ModelMetadata.cs @@ -112,8 +112,8 @@ namespace Microsoft.AspNetCore.Mvc.ModelBinding public abstract string Description { get; } /// - /// Gets the composite format (see - /// http://msdn.microsoft.com/en-us/library/txafckwd.aspx) used to display the model. + /// Gets the format string (see https://msdn.microsoft.com/en-us/library/txafckwd.aspx) used to display the + /// model. /// public abstract string DisplayFormatString { get; } @@ -123,8 +123,7 @@ namespace Microsoft.AspNetCore.Mvc.ModelBinding public abstract string DisplayName { get; } /// - /// Gets the composite format (see - /// http://msdn.microsoft.com/en-us/library/txafckwd.aspx) used to edit the model. + /// Gets the format string (see https://msdn.microsoft.com/en-us/library/txafckwd.aspx) used to edit the model. /// public abstract string EditFormatString { get; } diff --git a/src/Microsoft.AspNetCore.Mvc.Core/ApiExplorer/IApiRequestMetadataProvider.cs b/src/Microsoft.AspNetCore.Mvc.Core/ApiExplorer/IApiRequestMetadataProvider.cs index c59f38f7de..e24ca509f4 100644 --- a/src/Microsoft.AspNetCore.Mvc.Core/ApiExplorer/IApiRequestMetadataProvider.cs +++ b/src/Microsoft.AspNetCore.Mvc.Core/ApiExplorer/IApiRequestMetadataProvider.cs @@ -7,7 +7,7 @@ using Microsoft.AspNetCore.Mvc.Formatters; namespace Microsoft.AspNetCore.Mvc.ApiExplorer { /// - /// Provides a a set of possible content types than can be consumed by the action. + /// Provides a set of possible content types than can be consumed by the action. /// public interface IApiRequestMetadataProvider : IFilterMetadata { diff --git a/src/Microsoft.AspNetCore.Mvc.Razor/RazorPage.cs b/src/Microsoft.AspNetCore.Mvc.Razor/RazorPage.cs index 3fe6054600..141e4f55b9 100644 --- a/src/Microsoft.AspNetCore.Mvc.Razor/RazorPage.cs +++ b/src/Microsoft.AspNetCore.Mvc.Razor/RazorPage.cs @@ -12,7 +12,6 @@ using System.Threading.Tasks; using Microsoft.AspNetCore.Antiforgery; using Microsoft.AspNetCore.Html; using Microsoft.AspNetCore.Http; -using Microsoft.AspNetCore.Mvc.Internal; using Microsoft.AspNetCore.Mvc.Razor.Internal; using Microsoft.AspNetCore.Mvc.Rendering; using Microsoft.AspNetCore.Mvc.Routing; @@ -764,8 +763,7 @@ namespace Microsoft.AspNetCore.Mvc.Razor /// In layout pages, renders the content of the section named . /// /// The name of the section to render. - /// Returns to allow the call to - /// succeed. + /// An empty . /// The method writes to the and the value returned is a token /// value that allows the Write (produced due to @RenderSection(..)) to succeed. However the /// value does not represent the rendered content. @@ -784,8 +782,7 @@ namespace Microsoft.AspNetCore.Mvc.Razor /// /// The section to render. /// Indicates if this section must be rendered. - /// Returns to allow the call to - /// succeed. + /// An empty . /// The method writes to the and the value returned is a token /// value that allows the Write (produced due to @RenderSection(..)) to succeed. However the /// value does not represent the rendered content. @@ -806,8 +803,9 @@ namespace Microsoft.AspNetCore.Mvc.Razor /// In layout pages, asynchronously renders the content of the section named . /// /// The section to render. - /// A that on completion returns that - /// allows the call to succeed. + /// + /// A that on completion returns an empty . + /// /// The method writes to the and the value returned is a token /// value that allows the Write (produced due to @RenderSection(..)) to succeed. However the /// value does not represent the rendered content. @@ -827,8 +825,9 @@ namespace Microsoft.AspNetCore.Mvc.Razor /// The section to render. /// Indicates the section must be registered /// (using @section) in the page. - /// A that on completion returns that - /// allows the call to succeed. + /// + /// A that on completion returns an empty . + /// /// The method writes to the and the value returned is a token /// value that allows the Write (produced due to @RenderSection(..)) to succeed. However the /// value does not represent the rendered content. @@ -912,7 +911,7 @@ namespace Microsoft.AspNetCore.Mvc.Razor /// on the response stream, writing out any buffered content to the . /// /// A that represents the asynchronous flush operation and on - /// completion returns . + /// completion returns an empty . /// The value returned is a token value that allows FlushAsync to work directly in an HTML /// section. However the value does not represent the rendered content. /// This method also writes out headers, so any modifications to headers must be done before @@ -1015,7 +1014,7 @@ namespace Microsoft.AspNetCore.Mvc.Razor /// /// Sets antiforgery cookie and X-Frame-Options header on the response. /// - /// . + /// An empty . /// Call this method to send antiforgery cookie token and X-Frame-Options header to client /// before flushes the headers. public virtual HtmlString SetAntiforgeryCookieAndHeader() diff --git a/src/Microsoft.AspNetCore.Mvc.Razor/RazorViewEngineOptions.cs b/src/Microsoft.AspNetCore.Mvc.Razor/RazorViewEngineOptions.cs index 2654a93ee7..3f016b69ca 100644 --- a/src/Microsoft.AspNetCore.Mvc.Razor/RazorViewEngineOptions.cs +++ b/src/Microsoft.AspNetCore.Mvc.Razor/RazorViewEngineOptions.cs @@ -42,8 +42,8 @@ namespace Microsoft.AspNetCore.Mvc.Razor /// /// /// The locations of the views returned from controllers that do not belong to an area. - /// Locations are composite format strings (see http://msdn.microsoft.com/en-us/library/txafckwd.aspx), - /// which may contain the following format items: + /// Locations are format strings (see https://msdn.microsoft.com/en-us/library/txafckwd.aspx) which may contain + /// the following format items: /// /// /// @@ -68,8 +68,8 @@ namespace Microsoft.AspNetCore.Mvc.Razor /// /// /// The locations of the views returned from controllers that belong to an area. - /// Locations are composite format strings (see http://msdn.microsoft.com/en-us/library/txafckwd.aspx), - /// which may contain the following format items: + /// Locations are format strings (see https://msdn.microsoft.com/en-us/library/txafckwd.aspx) which may contain + /// the following format items: /// /// /// diff --git a/src/Microsoft.AspNetCore.Mvc.TagHelpers/InputTagHelper.cs b/src/Microsoft.AspNetCore.Mvc.TagHelpers/InputTagHelper.cs index 2e51db1fd2..8a95194d17 100644 --- a/src/Microsoft.AspNetCore.Mvc.TagHelpers/InputTagHelper.cs +++ b/src/Microsoft.AspNetCore.Mvc.TagHelpers/InputTagHelper.cs @@ -93,9 +93,8 @@ namespace Microsoft.AspNetCore.Mvc.TagHelpers public ModelExpression For { get; set; } /// - /// The composite format (see http://msdn.microsoft.com/en-us/library/txafckwd.aspx) to - /// apply when converting the result to a . Sets the generated "value" - /// attribute to that formatted . + /// The format string (see https://msdn.microsoft.com/en-us/library/txafckwd.aspx) used to format the + /// result. Sets the generated "value" attribute to that formatted string. /// /// /// Not used if the provided (see ) or calculated "type" attribute value is diff --git a/src/Microsoft.AspNetCore.Mvc.ViewFeatures/Rendering/HtmlHelperInputExtensions.cs b/src/Microsoft.AspNetCore.Mvc.ViewFeatures/Rendering/HtmlHelperInputExtensions.cs index 980f69ca2c..6afc1148bc 100644 --- a/src/Microsoft.AspNetCore.Mvc.ViewFeatures/Rendering/HtmlHelperInputExtensions.cs +++ b/src/Microsoft.AspNetCore.Mvc.ViewFeatures/Rendering/HtmlHelperInputExtensions.cs @@ -14,39 +14,20 @@ namespace Microsoft.AspNetCore.Mvc.Rendering { /// /// Returns an <input> element of type "checkbox" with value "true" and an <input> element of type - /// "hidden" with value "false". + /// "hidden" with value "false" for the specified . Adds a "checked" attribute to + /// the "checkbox" element based on the first non-null value found in: + /// the entry with full name, + /// the entry with full name, or + /// the evaluated against . + /// See for more information about a "full name". /// /// The instance this method extends. /// Expression name, relative to the current model. /// A new containing the <input> elements. /// - /// /// Combines and to set /// checkbox element's "name" attribute. Sanitizes to set checkbox element's "id" /// attribute. - /// - /// Determines checkbox element's "checked" attribute based on the following precedence: - /// - /// - /// entry for (converted to a - /// fully-qualified name) if entry exists and can be converted to a . - /// - /// - /// entry for (converted to a - /// fully-qualified name) if entry exists and can be converted to a . - /// - /// - /// Linq expression based on (converted to a fully-qualified name) run against - /// current model if result is non-null and can be converted to a . For example - /// string.Empty identifies the current model and "prop" identifies the current model's "prop" - /// property. - /// - /// Otherwise, does not include a "checked" attribute. - /// - /// - /// In all but the default case, includes a "checked" attribute with - /// value "checked" if the values is true; does not include the attribute otherwise. - /// /// public static IHtmlContent CheckBox(this IHtmlHelper htmlHelper, string expression) { @@ -60,41 +41,22 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// /// Returns an <input> element of type "checkbox" with value "true" and an <input> element of type - /// "hidden" with value "false". + /// "hidden" with value "false" for the specified . Adds a "checked" attribute to + /// the "checkbox" element based on the first non-null value found in: + /// the entry with full name, + /// the parameter, + /// the entry with full name, or + /// the evaluated against . + /// See for more information about a "full name". /// /// The instance this method extends. /// Expression name, relative to the current model. /// If true, checkbox is initially checked. /// A new containing the <input> elements. /// - /// /// Combines and to set /// checkbox element's "name" attribute. Sanitizes to set checkbox element's "id" /// attribute. - /// - /// Determines checkbox element's "checked" attribute based on the following precedence: - /// - /// - /// entry for (converted to a - /// fully-qualified name) if entry exists and can be converted to a . - /// - /// if non-null. - /// - /// entry for (converted to a - /// fully-qualified name) if entry exists and can be converted to a . - /// - /// - /// Linq expression based on (converted to a fully-qualified name) run against - /// current model if result is non-null and can be converted to a . For example - /// string.Empty identifies the current model and "prop" identifies the current model's "prop" - /// property. - /// - /// Otherwise, does not include a "checked" attribute. - /// - /// - /// In all but the default case, includes a "checked" attribute with - /// value "checked" if the values is true; does not include the attribute otherwise. - /// /// public static IHtmlContent CheckBox( this IHtmlHelper htmlHelper, @@ -111,7 +73,13 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// /// Returns an <input> element of type "checkbox" with value "true" and an <input> element of type - /// "hidden" with value "false". + /// "hidden" with value "false" for the specified . Adds a "checked" attribute to + /// the "checkbox" element based on the first non-null value found in: + /// the dictionary entry with key "checked", + /// the entry with full name, + /// the entry with full name, or + /// the evaluated against . + /// See for more information about a "full name". /// /// The instance this method extends. /// Expression name, relative to the current model. @@ -122,34 +90,9 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// /// A new containing the <input> elements. /// - /// /// Combines and to set /// checkbox element's "name" attribute. Sanitizes to set checkbox element's "id" /// attribute. - /// - /// Determines checkbox element's "checked" attribute based on the following precedence: - /// - /// - /// entry for (converted to a - /// fully-qualified name) if entry exists and can be converted to a . - /// - /// - /// entry for (converted to a - /// fully-qualified name) if entry exists and can be converted to a . - /// - /// - /// Linq expression based on (converted to a fully-qualified name) run against - /// current model if result is non-null and can be converted to a . For example - /// string.Empty identifies the current model and "prop" identifies the current model's "prop" - /// property. - /// - /// Existing "checked" entry in if any. - /// Otherwise, does not include a "checked" attribute. - /// - /// - /// In all but the and default cases, includes a "checked" attribute with - /// value "checked" if the values is true; does not include the attribute otherwise. - /// /// public static IHtmlContent CheckBox( this IHtmlHelper htmlHelper, @@ -166,33 +109,19 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// /// Returns an <input> element of type "checkbox" with value "true" and an <input> element of type - /// "hidden" with value "false". + /// "hidden" with value "false" for the specified . Adds a "checked" attribute to + /// the "checkbox" element based on the first non-null value found in: + /// the entry with full name, or + /// the evaluated against . + /// See for more information about a "full name". /// /// The instance this method extends. /// An expression to be evaluated against the current model. /// A new containing the <input> elements. /// - /// /// Combines and the string representation of the /// to set checkbox element's "name" attribute. Sanitizes the string /// representation of the to set checkbox element's "id" attribute. - /// - /// Determines checkbox element's "checked" attribute based on the following precedence: - /// - /// - /// entry for the string representation of the - /// if entry exists and can be converted to a . - /// - /// - /// result if it is non-null and can be parsed as a - /// . - /// - /// Otherwise, does not include a "checked" attribute. - /// - /// - /// In all but the default case, includes a "checked" attribute with - /// value "checked" if the values is true; does not include the attribute otherwise. - /// /// public static IHtmlContent CheckBoxFor( this IHtmlHelper htmlHelper, @@ -212,35 +141,20 @@ namespace Microsoft.AspNetCore.Mvc.Rendering } /// - /// Returns an <input> element of type "hidden" for the specified . + /// Returns an <input> element of type "hidden" for the specified . Adds a + /// "value" attribute to the element containing the first non-null value found in: + /// the entry with full name, + /// the entry with full name, or + /// the evaluated against . + /// See for more information about a "full name". /// /// The instance this method extends. /// Expression name, relative to the current model. /// A new containing the <input> element. /// - /// /// Combines and to set /// <input> element's "name" attribute. Sanitizes to set element's "id" /// attribute. - /// - /// Determines <input> element's "value" attribute based on the following precedence: - /// - /// - /// entry for (converted to a - /// fully-qualified name) if entry exists and can be converted to a . - /// - /// - /// entry for (converted to a - /// fully-qualified name) if entry exists and can be converted to a . - /// - /// - /// Linq expression based on (converted to a fully-qualified name) run against - /// current model if result is non-null and can be converted to a . For example - /// string.Empty identifies the current model and "prop" identifies the current model's "prop" - /// property. - /// - /// Otherwise, string.Empty. - /// /// public static IHtmlContent Hidden(this IHtmlHelper htmlHelper, string expression) { @@ -253,37 +167,22 @@ namespace Microsoft.AspNetCore.Mvc.Rendering } /// - /// Returns an <input> element of type "hidden" for the specified . + /// Returns an <input> element of type "hidden" for the specified . Adds a + /// "value" attribute to the element containing the first non-null value found in: + /// the entry with full name, + /// the parameter, + /// the entry with full name, or + /// the evaluated against . + /// See for more information about a "full name". /// /// The instance this method extends. /// Expression name, relative to the current model. /// If non-null, value to include in the element. /// A new containing the <input> element. /// - /// /// Combines and to set /// <input> element's "name" attribute. Sanitizes to set element's "id" /// attribute. - /// - /// Determines <input> element's "value" attribute based on the following precedence: - /// - /// - /// entry for (converted to a - /// fully-qualified name) if entry exists and can be converted to a . - /// - /// if non-null. - /// - /// entry for (converted to a - /// fully-qualified name) if entry exists and can be converted to a . - /// - /// - /// Linq expression based on (converted to a fully-qualified name) run against - /// current model if result is non-null and can be converted to a . For example - /// string.Empty identifies the current model and "prop" identifies the current model's "prop" - /// property. - /// - /// Otherwise, string.Empty. - /// /// public static IHtmlContent Hidden( this IHtmlHelper htmlHelper, @@ -299,7 +198,11 @@ namespace Microsoft.AspNetCore.Mvc.Rendering } /// - /// Returns an <input> element of type "hidden" for the specified . + /// Returns an <input> element of type "hidden" for the specified . Adds a + /// "value" attribute to the element containing the first non-null value found in: + /// the entry with full name, or + /// the evaluated against . + /// See for more information about a "full name". /// /// The instance this method extends. /// An expression to be evaluated against the current model. @@ -307,23 +210,9 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// The type of the result. /// A new containing the <input> element. /// - /// /// Combines and the string representation of the /// to set <input> element's "name" attribute. Sanitizes the string /// representation of the to set element's "id" attribute. - /// - /// Determines <input> element's "value" attribute based on the following precedence: - /// - /// - /// entry for the string representation of the - /// if entry exists and can be converted to a . - /// - /// - /// result if it is non-null and can be parsed as a - /// . - /// - /// Otherwise, string.Empty. - /// /// public static IHtmlContent HiddenFor( this IHtmlHelper htmlHelper, @@ -343,7 +232,8 @@ namespace Microsoft.AspNetCore.Mvc.Rendering } /// - /// Returns an <input> element of type "password" for the specified . + /// Returns an <input> element of type "password" for the specified . Does + /// not add a "value" attribute. /// /// The instance this method extends. /// Expression name, relative to the current model. @@ -364,23 +254,17 @@ namespace Microsoft.AspNetCore.Mvc.Rendering } /// - /// Returns an <input> element of type "password" for the specified . + /// Returns an <input> element of type "password" for the specified . Adds a + /// "value" attribute containing the parameter if that is non-null. /// /// The instance this method extends. /// Expression name, relative to the current model. /// If non-null, value to include in the element. /// A new containing the <input> element. /// - /// /// Combines and to set /// <input> element's "name" attribute. Sanitizes to set element's "id" /// attribute. - /// - /// Determines <input> element's "value" attribute based on the following precedence: - /// - /// if non-null. - /// Otherwise, string.Empty. - /// /// public static IHtmlContent Password( this IHtmlHelper htmlHelper, @@ -396,7 +280,8 @@ namespace Microsoft.AspNetCore.Mvc.Rendering } /// - /// Returns an <input> element of type "password" for the specified . + /// Returns an <input> element of type "password" for the specified . Does + /// not add a "value" attribute. /// /// The instance this method extends. /// An expression to be evaluated against the current model. @@ -404,19 +289,9 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// The type of the result. /// A new containing the <input> element. /// - /// /// Combines and the string representation of the /// to set <input> element's "name" attribute. Sanitizes the string /// representation of the to set element's "id" attribute. - /// - /// Determines <input> element's "value" attribute based on the following precedence: - /// - /// - /// result if it is non-null and can be parsed as a - /// . - /// - /// Otherwise, string.Empty. - /// /// public static IHtmlContent PasswordFor( this IHtmlHelper htmlHelper, @@ -437,40 +312,23 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// /// Returns an <input> element of type "radio" for the specified . + /// Adds a "value" attribute to the element containing the parameter if that is + /// non-null. + /// Adds a "checked" attribute to the element if matches the first non-null + /// value found in: + /// the entry with full name, + /// the entry with full name, or + /// the evaluated against . + /// See for more information about a "full name". /// /// The instance this method extends. /// Expression name, relative to the current model. /// Value to include in the element. Must not be null. /// A new containing the <input> element. /// - /// /// Combines and to set /// <input> element's "name" attribute. Sanitizes to set element's "id" /// attribute. Sets <input> element's "value" attribute to . - /// - /// Determines <input> element's "checked" attribute based on the following precedence: - /// - /// - /// entry for (converted to a - /// fully-qualified name) if entry exists and can be converted to a . - /// - /// - /// entry for (converted to a - /// fully-qualified name) if entry exists and can be converted to a . - /// - /// - /// Linq expression based on (converted to a fully-qualified name) run against - /// current model if result is non-null and can be converted to a . For example - /// string.Empty identifies the current model and "prop" identifies the current model's "prop" - /// property. - /// - /// Otherwise, does not include a "checked" attribute. - /// - /// - /// In all but the default case, includes a "checked" attribute with - /// value "checked" if the values is equal to a converted for - /// ; does not include the attribute otherwise. - /// /// public static IHtmlContent RadioButton( this IHtmlHelper htmlHelper, @@ -487,6 +345,16 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// /// Returns an <input> element of type "radio" for the specified . + /// Adds a "value" attribute to the element containing the first non-null value found in: + /// the parameter, or + /// the dictionary entry with key "value". + /// Adds a "checked" attribute to the element if matches the first non-null + /// value found in: + /// the dictionary entry with key "checked", + /// the entry with full name, + /// the entry with full name, or + /// the evaluated against . + /// See for more information about a "full name". /// /// The instance this method extends. /// Expression name, relative to the current model. @@ -501,41 +369,9 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// /// A new containing the <input> element. /// - /// /// Combines and to set /// <input> element's "name" attribute. Sanitizes to set element's "id" /// attribute. - /// - /// Determines element's "value" attribute based on the following precedence: - /// - /// if non-null. - /// Existing "value" entry in if any. - /// Otherwise, string.Empty. - /// - /// Determines <input> element's "checked" attribute based on the following precedence: - /// - /// - /// entry for (converted to a - /// fully-qualified name) if entry exists and can be converted to a . - /// - /// Existing "checked" entry in if any. - /// - /// entry for (converted to a - /// fully-qualified name) if entry exists and can be converted to a . - /// - /// - /// Linq expression based on (converted to a fully-qualified name) run against - /// current model if result is non-null and can be converted to a . For example - /// string.Empty identifies the current model and "prop" identifies the current model's "prop" - /// property. - /// - /// Otherwise, does not include a "checked" attribute. - /// - /// - /// In all but the and default cases, includes a "checked" attribute with - /// value "checked" if the values is equal to a converted for - /// ; does not include the attribute otherwise. - /// /// public static IHtmlContent RadioButton( this IHtmlHelper htmlHelper, @@ -553,6 +389,15 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// /// Returns an <input> element of type "radio" for the specified . + /// Adds a "value" attribute to the element containing the parameter if that is + /// non-null. + /// Adds a "checked" attribute to the element if matches the first non-null + /// value found in: + /// the entry with full name, + /// the parameter, + /// the entry with full name, or + /// the evaluated against . + /// See for more information about a "full name". /// /// The instance this method extends. /// Expression name, relative to the current model. @@ -566,41 +411,9 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// /// A new containing the <input> element. /// - /// /// Combines and to set /// <input> element's "name" attribute. Sanitizes to set element's "id" /// attribute. - /// - /// Determines element's "value" attribute based on the following precedence: - /// - /// if non-null. - /// Otherwise, string.Empty. - /// - /// Determines <input> element's "checked" attribute based on the following precedence: - /// - /// - /// entry for (converted to a - /// fully-qualified name) if entry exists and can be converted to a . - /// - /// if non-null. - /// - /// entry for (converted to a - /// fully-qualified name) if entry exists and can be converted to a . - /// - /// - /// Linq expression based on (converted to a fully-qualified name) run against - /// current model if result is non-null and can be converted to a . For example - /// string.Empty identifies the current model and "prop" identifies the current model's "prop" - /// property. - /// - /// Otherwise, does not include a "checked" attribute. - /// - /// - /// In all but the default case, includes a "checked" attribute with - /// value "checked" if the values is equal to a converted for - /// or is true (for that case); does not include - /// the attribute otherwise. - /// /// public static IHtmlContent RadioButton( this IHtmlHelper htmlHelper, @@ -618,6 +431,12 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// /// Returns an <input> element of type "radio" for the specified . + /// Adds a "value" attribute to the element containing the parameter. + /// Adds a "checked" attribute to the element if matches the first non-null + /// value found in: + /// the entry with full name, or + /// the evaluated against . + /// See for more information about a "full name". /// /// The instance this method extends. /// An expression to be evaluated against the current model. @@ -626,28 +445,10 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// The type of the result. /// A new containing the <input> element. /// - /// /// Combines and the string representation of the /// to set <select> element's "name" attribute. Sanitizes the string /// representation of the to set element's "id" attribute. Converts the /// to a to set element's "value" attribute. - /// - /// Determines <input> element's "checked" attribute based on the following precedence: - /// - /// - /// entry for the string representation of the - /// if entry exists and can be converted to a . - /// - /// - /// result if it is non-null and can be parsed as a . - /// - /// Otherwise, does not include a "checked" attribute. - /// - /// - /// In all but the default case, includes a "checked" attribute with - /// value "checked" if the values is equal to a converted for - /// ; does not include the attribute otherwise. - /// /// public static IHtmlContent RadioButtonFor( this IHtmlHelper htmlHelper, @@ -673,35 +474,20 @@ namespace Microsoft.AspNetCore.Mvc.Rendering } /// - /// Returns an <input> element of type "text" for the specified . + /// Returns an <input> element of type "text" for the specified . Adds a + /// "value" attribute to the element containing the first non-null value found in: + /// the entry with full name, + /// the entry with full name, or + /// the evaluated against . + /// See for more information about a "full name". /// /// The instance this method extends. /// Expression name, relative to the current model. /// A new containing the <input> element. /// - /// /// Combines and to set /// <input> element's "name" attribute. Sanitizes to set element's "id" /// attribute. - /// - /// Determines <input> element's "value" attribute based on the following precedence: - /// - /// - /// entry for (converted to a - /// fully-qualified name) if entry exists and can be converted to a . - /// - /// - /// entry for (converted to a - /// fully-qualified name) if entry exists and can be converted to a . - /// - /// - /// Linq expression based on (converted to a fully-qualified name) run against - /// current model if result is non-null and can be converted to a . For example - /// string.Empty identifies the current model and "prop" identifies the current model's "prop" - /// property. - /// - /// Otherwise, string.Empty. - /// /// public static IHtmlContent TextBox(this IHtmlHelper htmlHelper, string expression) { @@ -714,39 +500,22 @@ namespace Microsoft.AspNetCore.Mvc.Rendering } /// - /// Returns an <input> element of type "text" for the specified . + /// Returns an <input> element of type "text" for the specified . Adds a + /// "value" attribute to the element containing the first non-null value found in: + /// the entry with full name, + /// the parameter, + /// the entry with full name, or + /// the evaluated against . + /// See for more information about a "full name". /// /// The instance this method extends. /// Expression name, relative to the current model. /// If non-null, value to include in the element. /// A new containing the <input> element. /// - /// /// Combines and to set /// <input> element's "name" attribute. Sanitizes to set element's "id" /// attribute. - /// - /// Determines <input> element's "value" attribute based on the following precedence: - /// - /// - /// entry for (converted to a - /// fully-qualified name) if entry exists and can be converted to a . - /// - /// - /// if non-null. - /// - /// - /// entry for (converted to a - /// fully-qualified name) if entry exists and can be converted to a . - /// - /// - /// Linq expression based on (converted to a fully-qualified name) run against - /// current model if result is non-null and can be converted to a . For example - /// string.Empty identifies the current model and "prop" identifies the current model's "prop" - /// property. - /// - /// Otherwise, string.Empty. - /// /// public static IHtmlContent TextBox( this IHtmlHelper htmlHelper, @@ -762,47 +531,26 @@ namespace Microsoft.AspNetCore.Mvc.Rendering } /// - /// Returns an <input> element of type "text" for the specified . + /// Returns an <input> element of type "text" for the specified . Adds a + /// "value" attribute to the element containing the first non-null value found in: + /// the entry with full name, + /// the parameter, + /// the entry with full name, or + /// the evaluated against . + /// See for more information about a "full name". /// /// The instance this method extends. /// Expression name, relative to the current model. /// If non-null, value to include in the element. /// - /// The composite format (see http://msdn.microsoft.com/en-us/library/txafckwd.aspx). + /// The format string (see https://msdn.microsoft.com/en-us/library/txafckwd.aspx) used to format the "value" + /// attribute unless that came from model binding. /// /// A new containing the <input> element. /// - /// /// Combines and to set /// <input> element's "name" attribute. Sanitizes to set element's "id" /// attribute. - /// - /// Determines <input> element's "value" attribute based on the following precedence: - /// - /// - /// entry for (converted to a - /// fully-qualified name) if entry exists and can be converted to a . - /// - /// - /// if non-null. Formats using - /// or converts to a directly if - /// is null or empty. - /// - /// - /// entry for (converted to a - /// fully-qualified name) if entry exists and can be converted to a . Formats entry using - /// or converts entry to a directly if - /// is null or empty. - /// - /// - /// Linq expression based on (converted to a fully-qualified name) run against - /// current model if result is non-null and can be converted to a . For example - /// string.Empty identifies the current model and "prop" identifies the current model's "prop" - /// property. Formats result using or converts result to a - /// directly if is null or empty. - /// - /// Otherwise, string.Empty. - /// /// public static IHtmlContent TextBox( this IHtmlHelper htmlHelper, @@ -819,7 +567,14 @@ namespace Microsoft.AspNetCore.Mvc.Rendering } /// - /// Returns an <input> element of type "text" for the specified . + /// Returns an <input> element of type "text" for the specified . Adds a + /// "value" attribute to the element containing the first non-null value found in: + /// the entry with full name, + /// the parameter, + /// the entry with full name, + /// the evaluated against , or + /// the dictionary entry with key "value". + /// See for more information about a "full name". /// /// The instance this method extends. /// Expression name, relative to the current model. @@ -831,33 +586,9 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// /// A new containing the <input> element. /// - /// /// Combines and to set /// <input> element's "name" attribute. Sanitizes to set element's "id" /// attribute. - /// - /// Determines <input> element's "value" attribute based on the following precedence: - /// - /// - /// entry for (converted to a - /// fully-qualified name) if entry exists and can be converted to a . - /// - /// - /// if non-null. - /// - /// - /// entry for (converted to a - /// fully-qualified name) if entry exists and can be converted to a . - /// - /// - /// Linq expression based on (converted to a fully-qualified name) run against - /// current model if result is non-null and can be converted to a . For example - /// string.Empty identifies the current model and "prop" identifies the current model's "prop" - /// property. - /// - /// Existing "value" entry in if any. - /// Otherwise, string.Empty. - /// /// public static IHtmlContent TextBox( this IHtmlHelper htmlHelper, @@ -874,7 +605,11 @@ namespace Microsoft.AspNetCore.Mvc.Rendering } /// - /// Returns an <input> element of type "text" for the specified . + /// Returns an <input> element of type "text" for the specified . Adds a + /// "value" attribute to the element containing the first non-null value found in: + /// the entry with full name, or + /// the evaluated against . + /// See for more information about a "full name". /// /// The instance this method extends. /// An expression to be evaluated against the current model. @@ -882,22 +617,9 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// The type of the result. /// A new containing the <input> element. /// - /// /// Combines and the string representation of the /// to set <input> element's "name" attribute. Sanitizes the string /// representation of the to set element's "id" attribute. - /// - /// Determines <input> element's "value" attribute based on the following precedence: - /// - /// - /// entry for the string representation of the - /// if entry exists and can be converted to a . - /// - /// - /// result if it is non-null and can be parsed as a . - /// - /// Otherwise, string.Empty. - /// /// public static IHtmlContent TextBoxFor( this IHtmlHelper htmlHelper, @@ -917,35 +639,25 @@ namespace Microsoft.AspNetCore.Mvc.Rendering } /// - /// Returns an <input> element of type "text" for the specified . + /// Returns an <input> element of type "text" for the specified . Adds a + /// "value" attribute to the element containing the first non-null value found in: + /// the entry with full name, or + /// the evaluated against . + /// See for more information about a "full name". /// /// The instance this method extends. /// An expression to be evaluated against the current model. /// - /// The composite format (see http://msdn.microsoft.com/en-us/library/txafckwd.aspx). + /// The format string (see https://msdn.microsoft.com/en-us/library/txafckwd.aspx) used to format the + /// value when using that in the "value" attribute. /// /// The type of the model. /// The type of the result. /// A new containing the <input> element. /// - /// /// Combines and the string representation of the /// to set <input> element's "name" attribute. Sanitizes the string /// representation of the to set element's "id" attribute. - /// - /// Determines <input> element's "value" attribute based on the following precedence: - /// - /// - /// entry for the string representation of the - /// if entry exists and can be converted to a . - /// - /// - /// result if it is non-null and can be parsed as a . - /// Formats result using or converts result to a directly if - /// is null or empty. - /// - /// Otherwise, string.Empty. - /// /// public static IHtmlContent TextBoxFor( this IHtmlHelper htmlHelper, @@ -966,7 +678,12 @@ namespace Microsoft.AspNetCore.Mvc.Rendering } /// - /// Returns an <input> element of type "text" for the specified . + /// Returns an <input> element of type "text" for the specified . Adds a + /// "value" attribute to the element containing the first non-null value found in: + /// the entry with full name, + /// the evaluated against , or + /// the dictionary entry with key "value". + /// See for more information about a "full name". /// /// The instance this method extends. /// An expression to be evaluated against the current model. @@ -979,23 +696,9 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// The type of the result. /// A new containing the <input> element. /// - /// /// Combines and the string representation of the /// to set <input> element's "name" attribute. Sanitizes the string /// representation of the to set element's "id" attribute. - /// - /// Determines <input> element's "value" attribute based on the following precedence: - /// - /// - /// entry for the string representation of the - /// if entry exists and can be converted to a . - /// - /// - /// result if it is non-null and can be parsed as a . - /// - /// Existing "value" entry in if any. - /// Otherwise, string.Empty. - /// /// public static IHtmlContent TextBoxFor( this IHtmlHelper htmlHelper, @@ -1016,35 +719,20 @@ namespace Microsoft.AspNetCore.Mvc.Rendering } /// - /// Returns a <textarea> element for the specified . + /// Returns a <textarea> element for the specified . Adds content to the + /// element body based on the first non-null value found in: + /// the entry with full name, + /// the entry with full name, or + /// the evaluated against . + /// See for more information about a "full name". /// /// The instance this method extends. /// Expression name, relative to the current model. /// A new containing the <textarea> element. /// - /// /// Combines and to set /// <textarea> element's "name" attribute. Sanitizes to set element's "id" /// attribute. - /// - /// Determines <textarea> element's content based on the following precedence: - /// - /// - /// entry for (converted to a - /// fully-qualified name) if entry exists and can be converted to a . - /// - /// - /// entry for (converted to a - /// fully-qualified name) if entry exists and can be converted to a . - /// - /// - /// Linq expression based on (converted to a fully-qualified name) run against - /// current model if result is non-null and can be converted to a . For example - /// string.Empty identifies the current model and "prop" identifies the current model's "prop" - /// property. - /// - /// Otherwise, string.Empty. - /// /// public static IHtmlContent TextArea( this IHtmlHelper htmlHelper, @@ -1059,7 +747,12 @@ namespace Microsoft.AspNetCore.Mvc.Rendering } /// - /// Returns a <textarea> element for the specified . + /// Returns a <textarea> element for the specified . Adds content to the + /// element body based on the first non-null value found in: + /// the entry with full name, + /// the entry with full name, or + /// the evaluated against . + /// See for more information about a "full name". /// /// The instance this method extends. /// Expression name, relative to the current model. @@ -1070,29 +763,9 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// /// A new containing the <textarea> element. /// - /// /// Combines and to set /// <textarea> element's "name" attribute. Sanitizes to set element's "id" /// attribute. - /// - /// Determines <textarea> element's content based on the following precedence: - /// - /// - /// entry for (converted to a - /// fully-qualified name) if entry exists and can be converted to a . - /// - /// - /// entry for (converted to a - /// fully-qualified name) if entry exists and can be converted to a . - /// - /// - /// Linq expression based on (converted to a fully-qualified name) run against - /// current model if result is non-null and can be converted to a . For example - /// string.Empty identifies the current model and "prop" identifies the current model's "prop" - /// property. - /// - /// Otherwise, string.Empty. - /// /// public static IHtmlContent TextArea( this IHtmlHelper htmlHelper, @@ -1108,37 +781,22 @@ namespace Microsoft.AspNetCore.Mvc.Rendering } /// - /// Returns a <textarea> element for the specified . + /// Returns a <textarea> element for the specified . Adds content to the + /// element body based on the first non-null value found in: + /// the entry with full name, + /// the parameter, + /// the entry with full name, or + /// the evaluated against . + /// See for more information about a "full name". /// /// The instance this method extends. /// Expression name, relative to the current model. /// If non-null, value to include in the element. /// A new containing the <textarea> element. /// - /// /// Combines and to set /// <textarea> element's "name" attribute. Sanitizes to set element's "id" /// attribute. - /// - /// Determines <textarea> element's content based on the following precedence: - /// - /// - /// entry for (converted to a - /// fully-qualified name) if entry exists and can be converted to a . - /// - /// if non-null. - /// - /// entry for (converted to a - /// fully-qualified name) if entry exists and can be converted to a . - /// - /// - /// Linq expression based on (converted to a fully-qualified name) run against - /// current model if result is non-null and can be converted to a . For example - /// string.Empty identifies the current model and "prop" identifies the current model's "prop" - /// property. - /// - /// Otherwise, string.Empty. - /// /// public static IHtmlContent TextArea( this IHtmlHelper htmlHelper, @@ -1154,7 +812,13 @@ namespace Microsoft.AspNetCore.Mvc.Rendering } /// - /// Returns a <textarea> element for the specified . + /// Returns a <textarea> element for the specified . Adds content to the + /// element body based on the first non-null value found in: + /// the entry with full name, + /// the parameter, + /// the entry with full name, or + /// the evaluated against . + /// See for more information about a "full name". /// /// The instance this method extends. /// Expression name, relative to the current model. @@ -1166,30 +830,9 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// /// A new containing the <textarea> element. /// - /// /// Combines and to set /// <textarea> element's "name" attribute. Sanitizes to set element's "id" /// attribute. - /// - /// Determines <textarea> element's content based on the following precedence: - /// - /// - /// entry for (converted to a - /// fully-qualified name) if entry exists and can be converted to a . - /// - /// if non-null. - /// - /// entry for (converted to a - /// fully-qualified name) if entry exists and can be converted to a . - /// - /// - /// Linq expression based on (converted to a fully-qualified name) run against - /// current model if result is non-null and can be converted to a . For example - /// string.Empty identifies the current model and "prop" identifies the current model's "prop" - /// property. - /// - /// Otherwise, string.Empty. - /// /// public static IHtmlContent TextArea( this IHtmlHelper htmlHelper, @@ -1206,7 +849,11 @@ namespace Microsoft.AspNetCore.Mvc.Rendering } /// - /// Returns a <textarea> element for the specified . + /// Returns a <textarea> element for the specified . Adds content to the + /// element body based on the first non-null value found in: + /// the entry with full name, or + /// the evaluated against . + /// See for more information about a "full name". /// /// The instance this method extends. /// An expression to be evaluated against the current model. @@ -1214,22 +861,9 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// The type of the result. /// A new containing the <textarea> element. /// - /// /// Combines and the string representation of the /// to set <textarea> element's "name" attribute. Sanitizes the string /// representation of the to set element's "id" attribute. - /// - /// Determines <textarea> element's content based on the following precedence: - /// - /// - /// entry for the string representation of the - /// if entry exists and can be converted to a . - /// - /// - /// result if it is non-null and can be parsed as a . - /// - /// Otherwise, string.Empty. - /// /// public static IHtmlContent TextAreaFor( this IHtmlHelper htmlHelper, @@ -1249,7 +883,11 @@ namespace Microsoft.AspNetCore.Mvc.Rendering } /// - /// Returns a <textarea> element for the specified . + /// Returns a <textarea> element for the specified . Adds content to the + /// element body based on the first non-null value found in: + /// the entry with full name, or + /// the evaluated against . + /// See for more information about a "full name". /// /// The instance this method extends. /// An expression to be evaluated against the current model. @@ -1262,22 +900,9 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// The type of the result. /// A new containing the <textarea> element. /// - /// /// Combines and the string representation of the /// to set <textarea> element's "name" attribute. Sanitizes the string /// representation of the to set element's "id" attribute. - /// - /// Determines <textarea> element's content based on the following precedence: - /// - /// - /// entry for the string representation of the - /// if entry exists and can be converted to a . - /// - /// - /// result if it is non-null and can be parsed as a . - /// - /// Otherwise, string.Empty. - /// /// public static IHtmlContent TextAreaFor( this IHtmlHelper htmlHelper, diff --git a/src/Microsoft.AspNetCore.Mvc.ViewFeatures/Rendering/HtmlHelperNameExtensions.cs b/src/Microsoft.AspNetCore.Mvc.ViewFeatures/Rendering/HtmlHelperNameExtensions.cs index 1ebca75e9d..7ca12fa98b 100644 --- a/src/Microsoft.AspNetCore.Mvc.ViewFeatures/Rendering/HtmlHelperNameExtensions.cs +++ b/src/Microsoft.AspNetCore.Mvc.ViewFeatures/Rendering/HtmlHelperNameExtensions.cs @@ -11,7 +11,9 @@ namespace Microsoft.AspNetCore.Mvc.Rendering public static class HtmlHelperNameExtensions { /// - /// Returns the full HTML element name for the current model. + /// Returns the full HTML element name for the current model. Uses + /// (if non-empty) to reflect relationship between + /// current and the top-level view's model. /// /// The instance this method extends. /// A containing the element name. diff --git a/src/Microsoft.AspNetCore.Mvc.ViewFeatures/Rendering/HtmlHelperSelectExtensions.cs b/src/Microsoft.AspNetCore.Mvc.ViewFeatures/Rendering/HtmlHelperSelectExtensions.cs index c6f42f787e..884b964102 100644 --- a/src/Microsoft.AspNetCore.Mvc.ViewFeatures/Rendering/HtmlHelperSelectExtensions.cs +++ b/src/Microsoft.AspNetCore.Mvc.ViewFeatures/Rendering/HtmlHelperSelectExtensions.cs @@ -14,15 +14,27 @@ namespace Microsoft.AspNetCore.Mvc.Rendering public static class HtmlHelperSelectExtensions { /// - /// Returns a single-selection HTML <select> element for the . + /// Returns a single-selection HTML <select> element for the . Adds + /// <option> elements based on the entry with full name. Adds a + /// "selected" attribute to an <option> if its (if non-null) or + /// matches the first non-null value found in: + /// the entry with full name, or + /// the evaluated against . + /// See for more information about a "full name". /// /// The instance this method extends. /// Expression name, relative to the current model. /// A new containing the <select> element. /// + /// /// Combines and to set /// <select> element's "name" attribute. Sanitizes to set element's "id" /// attribute. + /// + /// + /// The entry with full name must be a non-null collection of + /// objects. + /// /// public static IHtmlContent DropDownList(this IHtmlHelper htmlHelper, string expression) { @@ -35,8 +47,14 @@ namespace Microsoft.AspNetCore.Mvc.Rendering } /// - /// Returns a single-selection HTML <select> element for the , using the - /// option label. + /// Returns a single-selection HTML <select> element for the . Adds + /// <option> elements based on and the + /// entry with full name. Adds a "selected" attribute to an <option> if its + /// (if non-null) or matches the + /// first non-null value found in: + /// the entry with full name, or + /// the evaluated against . + /// See for more information about a "full name". /// /// The instance this method extends. /// Expression name, relative to the current model. @@ -45,9 +63,15 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// /// A new containing the <select> element. /// + /// /// Combines and to set /// <select> element's "name" attribute. Sanitizes to set element's "id" /// attribute. + /// + /// + /// The entry with full name must be a non-null collection of + /// objects. + /// /// public static IHtmlContent DropDownList( this IHtmlHelper htmlHelper, @@ -67,14 +91,22 @@ namespace Microsoft.AspNetCore.Mvc.Rendering } /// - /// Returns a single-selection HTML <select> element for the , using the - /// specified list items. + /// Returns a single-selection HTML <select> element for the . Adds + /// <option> elements based on . Adds a "selected" attribute to an + /// <option> if its (if non-null) or + /// matches the first non-null value found in: + /// the entry with full name, + /// the entry with full name (unless used instead of + /// ), or + /// the evaluated against . + /// See for more information about a "full name". /// /// The instance this method extends. /// Expression name, relative to the current model. /// /// A collection of objects used to populate the <select> element with - /// <optgroup> and <option> elements. + /// <optgroup> and <option> elements. If null, uses the + /// entry with full name and that entry must be a collection of objects. /// /// A new containing the <select> element. /// @@ -96,14 +128,22 @@ namespace Microsoft.AspNetCore.Mvc.Rendering } /// - /// Returns a single-selection HTML <select> element for the , using the - /// specified list items and HTML attributes. + /// Returns a single-selection HTML <select> element for the . Adds + /// <option> elements based on . Adds a "selected" attribute to an + /// <option> if its (if non-null) or + /// matches the first non-null value found in: + /// the entry with full name, + /// the entry with full name (unless used instead of + /// ), or + /// the evaluated against . + /// See for more information about a "full name". /// /// The instance this method extends. /// Expression name, relative to the current model. /// /// A collection of objects used to populate the <select> element with - /// <optgroup> and <option> elements. + /// <optgroup> and <option> elements. If null, uses the + /// entry with full name and that entry must be a collection of objects. /// /// /// An that contains the HTML attributes for the <select> element. Alternatively, an @@ -130,14 +170,22 @@ namespace Microsoft.AspNetCore.Mvc.Rendering } /// - /// Returns a single-selection HTML <select> element for the , using the - /// specified list items and option label. + /// Returns a single-selection HTML <select> element for the . Adds + /// <option> elements based on and . Adds a + /// "selected" attribute to an <option> if its (if non-null) or + /// matches the first non-null value found in: + /// the entry with full name, + /// the entry with full name (unless used instead of + /// ), or + /// the evaluated against . + /// See for more information about a "full name". /// /// The instance this method extends. /// Expression name, relative to the current model. /// /// A collection of objects used to populate the <select> element with - /// <optgroup> and <option> elements. + /// <optgroup> and <option> elements. If null, uses the + /// entry with full name and that entry must be a collection of objects. /// /// /// The text for a default empty item. Does not include such an item if argument is null. @@ -163,14 +211,20 @@ namespace Microsoft.AspNetCore.Mvc.Rendering } /// - /// Returns a single-selection HTML <select> element for the , using the - /// specified list items. + /// Returns a single-selection HTML <select> element for the . Adds + /// <option> elements based on . Adds a "selected" attribute to an + /// <option> if its (if non-null) or + /// matches the first non-null value found in: + /// the entry with full name, or + /// the evaluated against . + /// See for more information about a "full name". /// /// The instance this method extends. /// An expression to be evaluated against the current model. /// /// A collection of objects used to populate the <select> element with - /// <optgroup> and <option> elements. + /// <optgroup> and <option> elements. If null, uses the + /// entry with full name and that entry must be a collection of objects. /// /// The type of the model. /// The type of the result. @@ -199,14 +253,20 @@ namespace Microsoft.AspNetCore.Mvc.Rendering } /// - /// Returns a single-selection HTML <select> element for the , using the - /// specified list items and HTML attributes. + /// Returns a single-selection HTML <select> element for the . Adds + /// <option> elements based on . Adds a "selected" attribute to an + /// <option> if its (if non-null) or + /// matches the first non-null value found in: + /// the entry with full name, or + /// the evaluated against . + /// See for more information about a "full name". /// /// The instance this method extends. /// An expression to be evaluated against the current model. /// /// A collection of objects used to populate the <select> element with - /// <optgroup> and <option> elements. + /// <optgroup> and <option> elements. If null, uses the + /// entry with full name and that entry must be a collection of objects. /// /// /// An that contains the HTML attributes for the <select> element. Alternatively, an @@ -244,14 +304,20 @@ namespace Microsoft.AspNetCore.Mvc.Rendering } /// - /// Returns a single-selection HTML <select> element for the , using the - /// specified list items and option label. + /// Returns a single-selection HTML <select> element for the . Adds + /// <option> elements based on and . Adds a + /// "selected" attribute to an <option> if its (if non-null) or + /// matches the first non-null value found in: + /// the entry with full name, or + /// the evaluated against . + /// See for more information about a "full name". /// /// The instance this method extends. /// An expression to be evaluated against the current model. /// /// A collection of objects used to populate the <select> element with - /// <optgroup> and <option> elements. + /// <optgroup> and <option> elements. If null, uses the + /// entry with full name and that entry must be a collection of objects. /// /// /// The text for a default empty item. Does not include such an item if argument is null. @@ -284,15 +350,27 @@ namespace Microsoft.AspNetCore.Mvc.Rendering } /// - /// Returns a multi-selection <select> element for the . + /// Returns a multi-selection <select> element for the . Adds + /// <option> elements based on the entry with full name. Adds a + /// "selected" attribute to an <option> if its (if non-null) or + /// matches the first non-null value found in: + /// the entry with full name, or + /// the evaluated against . + /// See for more information about a "full name". /// /// The instance this method extends. /// Expression name, relative to the current model. /// A new containing the <select> element. /// + /// /// Combines and to set /// <select> element's "name" attribute. Sanitizes to set element's "id" /// attribute. + /// + /// + /// The entry with full name must be a non-null collection of + /// objects. + /// /// public static IHtmlContent ListBox(this IHtmlHelper htmlHelper, string expression) { @@ -305,14 +383,22 @@ namespace Microsoft.AspNetCore.Mvc.Rendering } /// - /// Returns a multi-selection <select> element for the , using the - /// specified list items. + /// Returns a multi-selection <select> element for the . Adds + /// <option> elements based on . Adds a "selected" attribute to an + /// <option> if its (if non-null) or + /// matches the first non-null value found in: + /// the entry with full name, + /// the entry with full name (unless used instead of + /// ), or + /// the evaluated against . + /// See for more information about a "full name". /// /// The instance this method extends. /// Expression name, relative to the current model. /// /// A collection of objects used to populate the <select> element with - /// <optgroup> and <option> elements. + /// <optgroup> and <option> elements. If null, uses the + /// entry with full name and that entry must be a collection of objects. /// /// A new containing the <select> element. /// @@ -334,14 +420,20 @@ namespace Microsoft.AspNetCore.Mvc.Rendering } /// - /// Returns a multi-selection <select> element for the , using the - /// specified list items. + /// Returns a multi-selection <select> element for the . Adds + /// <option> elements based on . Adds a "selected" attribute to an + /// <option> if its (if non-null) or + /// matches the first non-null value found in: + /// the entry with full name, or + /// the evaluated against . + /// See for more information about a "full name". /// /// The instance this method extends. /// An expression to be evaluated against the current model. /// /// A collection of objects used to populate the <select> element with - /// <optgroup> and <option> elements. + /// <optgroup> and <option> elements. If null, uses the + /// entry with full name and that entry must be a collection of objects. /// /// The type of the model. /// The type of the result. diff --git a/src/Microsoft.AspNetCore.Mvc.ViewFeatures/Rendering/HtmlHelperValidationExtensions.cs b/src/Microsoft.AspNetCore.Mvc.ViewFeatures/Rendering/HtmlHelperValidationExtensions.cs index 9b5da1e9dd..956aa0d9ca 100644 --- a/src/Microsoft.AspNetCore.Mvc.ViewFeatures/Rendering/HtmlHelperValidationExtensions.cs +++ b/src/Microsoft.AspNetCore.Mvc.ViewFeatures/Rendering/HtmlHelperValidationExtensions.cs @@ -20,7 +20,8 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// Expression name, relative to the current model. /// /// A new containing a element. - /// null if the is valid and client-side validation is disabled. + /// An empty if the is valid and client-side + /// validation is disabled. /// /// /// Method extracts an error string from the object. Message @@ -51,7 +52,8 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// /// /// A new containing a element. - /// null if the is valid and client-side validation is disabled. + /// An empty if the is valid and client-side + /// validation is disabled. /// public static IHtmlContent ValidationMessage( this IHtmlHelper htmlHelper, @@ -80,7 +82,8 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// /// /// A new containing a element. - /// null if the is valid and client-side validation is disabled. + /// An empty if the is valid and client-side + /// validation is disabled. /// /// /// Method extracts an error string from the object. Message @@ -115,8 +118,9 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// . /// /// - /// A new containing a element. null if the - /// is valid and client-side validation is disabled. + /// A new containing a element. An empty + /// if the is valid and client-side validation is + /// disabled. /// public static IHtmlContent ValidationMessage( this IHtmlHelper htmlHelper, @@ -151,7 +155,8 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// /// /// A new containing a element. - /// null if the is valid and client-side validation is disabled. + /// An empty if the is valid and client-side + /// validation is disabled. /// public static IHtmlContent ValidationMessage( this IHtmlHelper htmlHelper, @@ -177,7 +182,8 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// The type of the result. /// /// A new containing a element. - /// null if the is valid and client-side validation is disabled. + /// An empty if the is valid and client-side + /// validation is disabled. /// /// /// Method extracts an error string from the object. Message @@ -215,7 +221,8 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// The type of the result. /// /// A new containing a element. - /// null if the is valid and client-side validation is disabled. + /// An empty if the is valid and client-side + /// validation is disabled. /// public static IHtmlContent ValidationMessageFor( this IHtmlHelper htmlHelper, @@ -256,7 +263,8 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// The type of the result. /// /// A new containing a element. - /// null if the is valid and client-side validation is disabled. + /// An empty if the is valid and client-side + /// validation is disabled. /// public static IHtmlContent ValidationMessageFor( this IHtmlHelper htmlHelper, @@ -295,8 +303,9 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// The type of the model. /// The type of the result. /// - /// A new containing the element. null if the - /// is valid and client-side validation is disabled. + /// A new containing the element. An empty + /// if the is valid and client-side validation is + /// disabled. /// public static IHtmlContent ValidationMessageFor( this IHtmlHelper htmlHelper, @@ -324,7 +333,7 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// The instance this method extends. /// /// New containing a <div> element wrapping the <ul> element. - /// if the current model is valid and client-side validation is disabled). + /// An empty if the current model is valid and client-side validation is disabled. /// public static IHtmlContent ValidationSummary(this IHtmlHelper htmlHelper) { @@ -350,7 +359,7 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// /// /// New containing a <div> element wrapping the <ul> element. - /// if the current model is valid and client-side validation is disabled). + /// An empty if the current model is valid and client-side validation is disabled. /// public static IHtmlContent ValidationSummary(this IHtmlHelper htmlHelper, bool excludePropertyErrors) { @@ -375,8 +384,8 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// /// New containing a <div> element wrapping the /// element (which wraps the - /// ) and the <ul> element. if the current model - /// is valid and client-side validation is disabled). + /// ) and the <ul> element. An empty if the current + /// model is valid and client-side validation is disabled. /// public static IHtmlContent ValidationSummary(this IHtmlHelper htmlHelper, string message) { @@ -404,8 +413,8 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// /// /// New containing a <div> element wrapping the element - /// and the <ul> element. if the current model is valid and client-side - /// validation is disabled). + /// and the <ul> element. An empty if the current model is valid and + /// client-side validation is disabled. /// public static IHtmlContent ValidationSummary(this IHtmlHelper htmlHelper, string message, string tag) { @@ -433,8 +442,8 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// /// New containing a <div> element wrapping the /// element (which, in turn, wraps the - /// ) and the <ul> element. if the current model - /// is valid and client-side validation is disabled). + /// ) and the <ul> element. An empty if the current + /// model is valid and client-side validation is disabled. /// public static IHtmlContent ValidationSummary( this IHtmlHelper htmlHelper, @@ -467,8 +476,8 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// /// New containing a <div> element wrapping the /// element (which wraps the - /// ) and the <ul> element. if the current model - /// is valid and client-side validation is disabled). + /// ) and the <ul> element. An empty if the current + /// model is valid and client-side validation is disabled. /// public static IHtmlContent ValidationSummary( this IHtmlHelper htmlHelper, @@ -504,8 +513,8 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// /// /// New containing a <div> element wrapping the element - /// and the <ul> element. if the current model is valid and client-side - /// validation is disabled). + /// and the <ul> element. An empty if the current model is valid and + /// client-side validation is disabled. /// public static IHtmlContent ValidationSummary( this IHtmlHelper htmlHelper, @@ -540,8 +549,8 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// /// /// New containing a <div> element wrapping the element - /// and the <ul> element. if the current model is valid and client-side - /// validation is disabled). + /// and the <ul> element. An empty if the current model is valid and + /// client-side validation is disabled. /// public static IHtmlContent ValidationSummary( this IHtmlHelper htmlHelper, @@ -578,8 +587,8 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// /// New containing a <div> element wrapping the /// element (which wraps the - /// ) and the <ul> element. if the current model - /// is valid and client-side validation is disabled). + /// ) and the <ul> element. An empty if the current + /// model is valid and client-side validation is disabled. /// public static IHtmlContent ValidationSummary( this IHtmlHelper htmlHelper, diff --git a/src/Microsoft.AspNetCore.Mvc.ViewFeatures/Rendering/HtmlHelperValueExtensions.cs b/src/Microsoft.AspNetCore.Mvc.ViewFeatures/Rendering/HtmlHelperValueExtensions.cs index 43dceadde5..8def65a53c 100644 --- a/src/Microsoft.AspNetCore.Mvc.ViewFeatures/Rendering/HtmlHelperValueExtensions.cs +++ b/src/Microsoft.AspNetCore.Mvc.ViewFeatures/Rendering/HtmlHelperValueExtensions.cs @@ -12,7 +12,12 @@ namespace Microsoft.AspNetCore.Mvc.Rendering public static class HtmlHelperValueExtensions { /// - /// Returns the formatted value for the specified . + /// Returns the formatted value for the specified . Specifically, returns the + /// first non-null value found in: + /// the entry with full name, + /// the entry with full name, or + /// the evaluated against . + /// See for more information about a "full name". /// /// The instance this method extends. /// Expression name, relative to the current model. @@ -31,7 +36,11 @@ namespace Microsoft.AspNetCore.Mvc.Rendering } /// - /// Returns the formatted value for the specified . + /// Returns the formatted value for the specified . Specifically, returns the + /// first non-null value found in: + /// the entry with full name, or + /// the evaluated against . + /// See for more information about a "full name". /// /// The instance this method extends. /// An expression to be evaluated against the current model. @@ -59,7 +68,12 @@ namespace Microsoft.AspNetCore.Mvc.Rendering } /// - /// Returns the formatted value for the current model. + /// Returns the formatted value for the current model. Specifically, returns the + /// first non-null value found in: + /// the entry with full name, + /// the entry with full name, or + /// the . + /// See for more information about a "full name". /// /// The instance this method extends. /// A containing the formatted value. @@ -77,11 +91,17 @@ namespace Microsoft.AspNetCore.Mvc.Rendering } /// - /// Returns the formatted value for the current model. + /// Returns the formatted value for the current model. Specifically, returns the + /// first non-null value found in: + /// the entry with full name, + /// the entry with full name, or + /// the . + /// See for more information about a "full name". /// /// The instance this method extends. /// - /// The composite format (see http://msdn.microsoft.com/en-us/library/txafckwd.aspx). + /// The format string (see https://msdn.microsoft.com/en-us/library/txafckwd.aspx) used to format the return + /// value unless that came from model binding. /// /// A containing the formatted value. /// diff --git a/src/Microsoft.AspNetCore.Mvc.ViewFeatures/Rendering/IHtmlHelper.cs b/src/Microsoft.AspNetCore.Mvc.ViewFeatures/Rendering/IHtmlHelper.cs index 95f4b8bf11..c757db49f9 100644 --- a/src/Microsoft.AspNetCore.Mvc.ViewFeatures/Rendering/IHtmlHelper.cs +++ b/src/Microsoft.AspNetCore.Mvc.ViewFeatures/Rendering/IHtmlHelper.cs @@ -169,7 +169,16 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// /// Returns an <input> element of type "checkbox" with value "true" and an <input> element of type - /// "hidden" with value "false". + /// "hidden" with value "false" for the specified . Adds a "checked" attribute to + /// the "checkbox" element based on the first non-null value found in: + /// the dictionary entry with key "checked", + /// the entry with full name, + /// the entry with full name, or + /// the evaluated against . + /// If is non-null, instead uses the first non-null value found in: + /// the entry with full name, or + /// the parameter. + /// See for more information about a "full name". /// /// Expression name, relative to the current model. /// If true, checkbox is initially checked. @@ -179,35 +188,9 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// /// A new containing the <input> elements. /// - /// /// Combines and to set checkbox /// element's "name" attribute. Sanitizes to set checkbox element's "id" /// attribute. - /// - /// Determines checkbox element's "checked" attribute based on the following precedence: - /// - /// - /// entry for (converted to a fully-qualified - /// name) if entry exists and can be converted to a . - /// - /// if non-null. - /// - /// entry for (converted to a fully-qualified name) - /// if entry exists and can be converted to a . - /// - /// - /// Linq expression based on (converted to a fully-qualified name) run against - /// current model if result is non-null and can be converted to a . For example - /// string.Empty identifies the current model and "prop" identifies the current model's "prop" - /// property. - /// - /// Existing "checked" entry in if any. - /// Otherwise, does not include a "checked" attribute. - /// - /// - /// In all but the and default cases, includes a "checked" attribute with - /// value "checked" if the values is true; does not include the attribute otherwise. - /// /// IHtmlContent CheckBox(string expression, bool? isChecked, object htmlAttributes); @@ -240,6 +223,10 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// Example s include string.Empty which identifies the current model and /// "prop" which identifies the current model's "prop" property. /// + /// + /// Custom templates are found under a DisplayTemplates folder. The folder name is case-sensitive on + /// case-sensitive file systems. + /// /// IHtmlContent Display( string expression, @@ -265,13 +252,20 @@ namespace Microsoft.AspNetCore.Mvc.Rendering string DisplayText(string expression); /// - /// Returns a single-selection HTML <select> element for the , - /// using the specified list items, option label, and HTML attributes. + /// Returns a single-selection HTML <select> element for the . Adds + /// <option> elements based on and . Adds a + /// "selected" attribute to an <option> if its (if non-null) or + /// matches the first non-null value found in: + /// the entry with full name, + /// the entry with full name (unless used instead of ), or + /// the evaluated against . + /// See for more information about a "full name". /// /// Expression name, relative to the current model. /// /// A collection of objects used to populate the <select> element with - /// <optgroup> and <option> elements. + /// <optgroup> and <option> elements. If null, uses the entry with + /// full name and that entry must be a collection of objects. /// /// /// The text for a default empty item. Does not include such an item if argument is null. @@ -321,6 +315,10 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// Example s include string.Empty which identifies the current model and /// "prop" which identifies the current model's "prop" property. /// + /// + /// Custom templates are found under a EditorTemplates folder. The folder name is case-sensitive on + /// case-sensitive file systems. + /// /// IHtmlContent Editor(string expression, string templateName, string htmlFieldName, object additionalViewData); @@ -351,7 +349,8 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// /// The value. /// - /// The composite format (see http://msdn.microsoft.com/en-us/library/txafckwd.aspx). + /// The format string (see https://msdn.microsoft.com/en-us/library/txafckwd.aspx) used to format the return + /// value. /// /// A containing the formatted value. /// @@ -364,7 +363,8 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// Returns an HTML element Id for the specified expression . /// /// - /// Fully-qualified expression name, ignoring the current model. Must not be null. + /// Fully-qualified expression name, ignoring the current model. Must not be null. See + /// for more information about a "full name". /// /// A containing the element Id. string GenerateIdFromName(string fullName); @@ -398,7 +398,14 @@ namespace Microsoft.AspNetCore.Mvc.Rendering IEnumerable GetEnumSelectList(Type enumType); /// - /// Returns an <input> element of type "hidden" for the specified . + /// Returns an <input> element of type "hidden" for the specified . Adds a + /// "value" attribute to the element containing the first non-null value found in: + /// the entry with full name, + /// the parameter, + /// the entry with full name, + /// the evaluated against , or + /// the dictionary entry with key "value". + /// See for more information about a "full name". /// /// Expression name, relative to the current model. /// If non-null, value to include in the element. @@ -408,31 +415,9 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// /// A new containing the <input> element. /// - /// /// Combines and to set /// <input> element's "name" attribute. Sanitizes to set element's "id" /// attribute. - /// - /// Determines <input> element's "value" attribute based on the following precedence: - /// - /// - /// entry for (converted to a fully-qualified - /// name) if entry exists and can be converted to a . - /// - /// if non-null. - /// - /// entry for (converted to a fully-qualified name) - /// if entry exists and can be converted to a . - /// - /// - /// Linq expression based on (converted to a fully-qualified name) run against - /// current model if result is non-null and can be converted to a . For example - /// string.Empty identifies the current model and "prop" identifies the current model's "prop" - /// property. - /// - /// Existing "value" entry in if any. - /// Otherwise, string.Empty. - /// /// IHtmlContent Hidden(string expression, object value, object htmlAttributes); @@ -456,13 +441,20 @@ namespace Microsoft.AspNetCore.Mvc.Rendering IHtmlContent Label(string expression, string labelText, object htmlAttributes); /// - /// Returns a multi-selection <select> element for the , using the - /// specified list items and HTML attributes. + /// Returns a multi-selection <select> element for the . Adds + /// <option> elements based on . Adds a "selected" attribute to an + /// <option> if its (if non-null) or + /// matches an entry in the first non-null collection found in: + /// the entry with full name, + /// the entry with full name (unless used instead of ), or + /// the evaluated against . + /// See for more information about a "full name". /// /// Expression name, relative to the current model. /// /// A collection of objects used to populate the <select> element with - /// <optgroup> and <option> elements. + /// <optgroup> and <option> elements. If null, finds the + /// collection with name in . /// /// /// An that contains the HTML attributes for the <select> element. Alternatively, an @@ -477,7 +469,9 @@ namespace Microsoft.AspNetCore.Mvc.Rendering IHtmlContent ListBox(string expression, IEnumerable selectList, object htmlAttributes); /// - /// Returns the full HTML element name for the specified . + /// Returns the full HTML element name for the specified . Uses + /// (if non-empty) to reflect relationship between current + /// and the top-level view's model. /// /// Expression name, relative to the current model. /// A containing the element name. @@ -498,7 +492,10 @@ namespace Microsoft.AspNetCore.Mvc.Rendering Task PartialAsync(string partialViewName, object model, ViewDataDictionary viewData); /// - /// Returns an <input> element of type "password" for the specified . + /// Returns an <input> element of type "password" for the specified . Adds a + /// "value" attribute containing the first non-null value in: + /// the parameter, or + /// the dictionary entry with key "value". /// /// Expression name, relative to the current model. /// If non-null, value to include in the element. @@ -508,22 +505,27 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// /// A new containing the <input> element. /// - /// /// Combines and to set /// <input> element's "name" attribute. Sanitizes to set element's "id" /// attribute. - /// - /// Determines <input> element's "value" attribute based on the following precedence: - /// - /// if non-null. - /// Existing "value" entry in if any. - /// Otherwise, string.Empty. - /// /// IHtmlContent Password(string expression, object value, object htmlAttributes); /// /// Returns an <input> element of type "radio" for the specified . + /// Adds a "value" attribute to the element containing the first non-null value found in: + /// the parameter, or + /// the dictionary entry with key "value". + /// Adds a "checked" attribute to the element if matches the first non-null + /// value found in: + /// the dictionary entry with key "checked", + /// the entry with full name, + /// the entry with full name, or + /// the evaluated against . + /// If is non-null, instead uses the first non-null value found in: + /// the entry with full name, or + /// the parameter. + /// See for more information about a "full name". /// /// Expression name, relative to the current model. /// @@ -542,43 +544,9 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// /// A new containing the <input> element. /// - /// /// Combines and to set /// <input> element's "name" attribute. Sanitizes to set element's "id" /// attribute. - /// - /// Determines element's "value" attribute based on the following precedence: - /// - /// if non-null. - /// Existing "value" entry in if any. - /// Otherwise, string.Empty. - /// - /// Determines <input> element's "checked" attribute based on the following precedence: - /// - /// - /// entry for (converted to a fully-qualified - /// name) if entry exists and can be converted to a . - /// - /// if non-null. - /// Existing "checked" entry in if any. - /// - /// entry for (converted to a fully-qualified name) - /// if entry exists and can be converted to a . - /// - /// - /// Linq expression based on (converted to a fully-qualified name) run against - /// current model if result is non-null and can be converted to a . For example - /// string.Empty identifies the current model and "prop" identifies the current model's "prop" - /// property. - /// - /// Otherwise, does not include a "checked" attribute. - /// - /// - /// In all but the and default cases, includes a "checked" attribute with - /// value "checked" if the values is equal to a converted for - /// or is true (for that case); does not include - /// the attribute otherwise. - /// /// IHtmlContent RadioButton(string expression, object value, bool? isChecked, object htmlAttributes); @@ -641,7 +609,13 @@ namespace Microsoft.AspNetCore.Mvc.Rendering object htmlAttributes); /// - /// Returns a <textarea> element for the specified . + /// Returns a <textarea> element for the specified . Adds content to the + /// element body based on the first non-null value found in: + /// the entry with full name, + /// the parameter, + /// the entry with full name, or + /// the evaluated against . + /// See for more information about a "full name". /// /// Expression name, relative to the current model. /// If non-null, value to include in the element. @@ -653,40 +627,27 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// /// A new containing the <textarea> element. /// - /// /// Combines and to set /// <textarea> element's "name" attribute. Sanitizes to set element's "id" /// attribute. - /// - /// Determines <textarea> element's content based on the following precedence: - /// - /// - /// entry for (converted to a fully-qualified - /// name) if entry exists and can be converted to a . - /// - /// if non-null. - /// - /// entry for (converted to a fully-qualified name) - /// if entry exists and can be converted to a . - /// - /// - /// Linq expression based on (converted to a fully-qualified name) run against - /// current model if result is non-null and can be converted to a . For example - /// string.Empty identifies the current model and "prop" identifies the current model's "prop" - /// property. - /// - /// Otherwise, string.Empty. - /// /// IHtmlContent TextArea(string expression, string value, int rows, int columns, object htmlAttributes); /// - /// Returns an <input> element of type "text" for the specified . + /// Returns an <input> element of type "text" for the specified . Adds a + /// "value" attribute to the element containing the first non-null value found in: + /// the entry with full name, + /// the parameter, + /// the entry with full name, + /// the evaluated against , or + /// the dictionary entry with key "value". + /// See for more information about a "full name". /// /// Expression name, relative to the current model. /// If non-null, value to include in the element. /// - /// The composite format (see http://msdn.microsoft.com/en-us/library/txafckwd.aspx). + /// The format string (see https://msdn.microsoft.com/en-us/library/txafckwd.aspx) used to format the "value" + /// attribute unless that came from model binding. /// /// /// An that contains the HTML attributes for the element. Alternatively, an @@ -694,37 +655,9 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// /// A new containing the <input> element. /// - /// /// Combines and to set /// <input> element's "name" attribute. Sanitizes to set element's "id" /// attribute. - /// - /// Determines <input> element's "value" attribute based on the following precedence: - /// - /// - /// entry for (converted to a fully-qualified - /// name) if entry exists and can be converted to a . - /// - /// - /// if non-null. Formats using - /// or converts to a directly if - /// is null or empty. - /// - /// - /// entry for (converted to a fully-qualified name) if entry - /// exists and can be converted to a . Formats entry using or - /// converts entry to a directly if is null or empty. - /// - /// - /// Linq expression based on (converted to a fully-qualified name) run against - /// current model if result is non-null and can be converted to a . For example - /// string.Empty identifies the current model and "prop" identifies the current model's "prop" - /// property. Formats result using or converts result to a - /// directly if is null or empty. - /// - /// Existing "value" entry in if any. - /// Otherwise, string.Empty. - /// /// IHtmlContent TextBox(string current, object value, string format, object htmlAttributes); @@ -747,8 +680,9 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// . /// /// - /// A new containing a element. null if the - /// is valid and client-side validation is disabled. + /// A new containing a element. An empty + /// if the is valid and client-side validation is + /// disabled. /// IHtmlContent ValidationMessage(string expression, string message, object htmlAttributes, string tag); @@ -770,8 +704,8 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// /// /// New containing a <div> element wrapping the element - /// and the <ul> element. if the current model is valid and client-side - /// validation is disabled). + /// and the <ul> element. An empty if the current model is valid and + /// client-side validation is disabled. /// IHtmlContent ValidationSummary( bool excludePropertyErrors, @@ -780,11 +714,17 @@ namespace Microsoft.AspNetCore.Mvc.Rendering string tag); /// - /// Returns the formatted value for the specified . + /// Returns the formatted value for the specified . Specifically, returns the + /// first non-null value found in: + /// the entry with full name, + /// the entry with full name, or + /// the evaluated against . + /// See for more information about a "full name". /// /// Expression name, relative to the current model. /// - /// The composite format (see http://msdn.microsoft.com/en-us/library/txafckwd.aspx). + /// The format string (see https://msdn.microsoft.com/en-us/library/txafckwd.aspx) used to format the return + /// value unless that came from model binding. /// /// A containing the formatted value. /// diff --git a/src/Microsoft.AspNetCore.Mvc.ViewFeatures/Rendering/IHtmlHelperOfT.cs b/src/Microsoft.AspNetCore.Mvc.ViewFeatures/Rendering/IHtmlHelperOfT.cs index eb1499488e..df4d14d95d 100644 --- a/src/Microsoft.AspNetCore.Mvc.ViewFeatures/Rendering/IHtmlHelperOfT.cs +++ b/src/Microsoft.AspNetCore.Mvc.ViewFeatures/Rendering/IHtmlHelperOfT.cs @@ -22,7 +22,15 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// /// Returns an <input> element of type "checkbox" with value "true" and an <input> element of type - /// "hidden" with value "false". + /// "hidden" with value "false" for the specified . Adds a "checked" attribute to + /// the "checkbox" element based on the first non-null value found in: + /// the dictionary entry with key "checked", or + /// the entry with full name. + /// If evaluates to a non-null value, instead uses the first + /// non-null value found in: + /// the entry with full name, or + /// the evaluated against . + /// See for more information about a "full name". /// /// An expression to be evaluated against the current model. /// @@ -31,28 +39,9 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// /// A new containing the <input> elements. /// - /// /// Combines and the string representation of the /// to set checkbox element's "name" attribute. Sanitizes the string /// representation of the to set checkbox element's "id" attribute. - /// - /// Determines checkbox element's "checked" attribute based on the following precedence: - /// - /// - /// entry for the string representation of the - /// if entry exists and can be converted to a . - /// - /// - /// result if it is non-null and can be parsed as a - /// . - /// - /// Existing "checked" entry in if any. - /// Otherwise, does not include a "checked" attribute. - /// - /// - /// In all but the case, includes a "checked" attribute with value "checked" - /// if the values is true; does not include the attribute otherwise. - /// /// IHtmlContent CheckBoxFor(Expression> expression, object htmlAttributes); @@ -75,8 +64,14 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// The type of the result. /// A new containing the created HTML. /// + /// /// For example the default display template includes markup for each property in the /// result. + /// + /// + /// Custom templates are found under a DisplayTemplates folder. The folder name is case-sensitive on + /// case-sensitive file systems. + /// /// IHtmlContent DisplayFor( Expression> expression, @@ -116,13 +111,19 @@ namespace Microsoft.AspNetCore.Mvc.Rendering string DisplayTextFor(Expression> expression); /// - /// Returns a single-selection HTML <select> element for the , using the - /// specified list items, option label, and HTML attributes. + /// Returns a single-selection HTML <select> element for the . Adds + /// <option> elements based on and . Adds a + /// "selected" attribute to an <option> if its (if non-null) or + /// matches the first non-null value found in: + /// the entry with full name, or + /// the evaluated against . + /// See for more information about a "full name". /// /// An expression to be evaluated against the current model. /// /// A collection of objects used to populate the <select> element with - /// <optgroup> and <option> elements. + /// <optgroup> and <option> elements. If null, uses the entry with + /// full name and that entry must be a collection of objects. /// /// /// The text for a default empty item. Does not include such an item if argument is null. @@ -163,8 +164,14 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// The type of the result. /// A new containing the <input> element(s). /// + /// /// For example the default editor template includes <label> and <input> /// elements for each property in the result. + /// + /// + /// Custom templates are found under a EditorTemplates folder. The folder name is case-sensitive on + /// case-sensitive file systems. + /// /// IHtmlContent EditorFor( Expression> expression, @@ -179,7 +186,12 @@ namespace Microsoft.AspNetCore.Mvc.Rendering new string Encode(string value); /// - /// Returns an <input> element of type "hidden" for the specified . + /// Returns an <input> element of type "hidden" for the specified . Adds a + /// "value" attribute to the element containing the first non-null value found in: + /// the entry with full name, + /// the evaluated against , or + /// the dictionary entry with key "value". + /// See for more information about a "full name". /// /// An expression to be evaluated against the current model. /// @@ -189,24 +201,9 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// The type of the result. /// A new containing the <input> element. /// - /// /// Combines and the string representation of the /// to set <input> element's "name" attribute. Sanitizes the string /// representation of the to set element's "id" attribute. - /// - /// Determines <input> element's "value" attribute based on the following precedence: - /// - /// - /// entry for the string representation of the - /// if entry exists and can be converted to a . - /// - /// - /// result if it is non-null and can be parsed as a - /// . - /// - /// Existing "value" entry in if any. - /// Otherwise, string.Empty. - /// /// IHtmlContent HiddenFor( Expression> expression, @@ -237,13 +234,19 @@ namespace Microsoft.AspNetCore.Mvc.Rendering object htmlAttributes); /// - /// Returns a multi-selection <select> element for the , using the - /// specified list items and HTML attributes. + /// Returns a multi-selection <select> element for the . Adds + /// <option> elements based on . Adds a "selected" attribute to an + /// <option> if its (if non-null) or + /// matches an entry in the first non-null collection found in: + /// the entry with full name, or + /// the evaluated against . + /// See for more information about a "full name". /// /// An expression to be evaluated against the current model. /// /// A collection of objects used to populate the <select> element with - /// <optgroup> and <option> elements. + /// <optgroup> and <option> elements. If null, finds the + /// collection with name in . /// /// /// An that contains the HTML attributes for the <select> element. Alternatively, an @@ -262,7 +265,9 @@ namespace Microsoft.AspNetCore.Mvc.Rendering object htmlAttributes); /// - /// Returns the full HTML element name for the specified . + /// Returns the full HTML element name for the specified . Uses + /// (if non-empty) to reflect relationship between current + /// and the top-level view's model. /// /// An expression to be evaluated against the current model. /// The type of the result. @@ -270,7 +275,9 @@ namespace Microsoft.AspNetCore.Mvc.Rendering string NameFor(Expression> expression); /// - /// Returns an <input> element of type "password" for the specified . + /// Returns an <input> element of type "password" for the specified . Adds a + /// "value" attribute containing the dictionary entry with key "value" (if + /// any). /// /// An expression to be evaluated against the current model. /// @@ -280,20 +287,9 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// The type of the result. /// A new containing the <input> element. /// - /// /// Combines and the string representation of the /// to set <input> element's "name" attribute. Sanitizes the string /// representation of the to set element's "id" attribute. - /// - /// Determines <input> element's "value" attribute based on the following precedence: - /// - /// - /// result if it is non-null and can be parsed as a - /// . - /// - /// Existing "value" entry in if any. - /// Otherwise, string.Empty. - /// /// IHtmlContent PasswordFor( Expression> expression, @@ -301,6 +297,19 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// /// Returns an <input> element of type "radio" for the specified . + /// Adds a "value" attribute to the element containing the first non-null value found in: + /// the parameter, or + /// the dictionary entry with key "value". + /// Adds a "checked" attribute to the element if matches the first non-null + /// value found in: + /// the dictionary entry with key "checked", or + /// the entry with full name. + /// If evaluates to a non-null value, instead uses the first + /// non-null value found in: + /// the entry with full name, or + /// the evaluated against . + /// See for more information about a "full name". + /// Adds a "value" attribute to the element containing the parameter. /// /// An expression to be evaluated against the current model. /// Value to include in the element. Must not be null. @@ -311,29 +320,9 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// The type of the result. /// A new containing the <input> element. /// - /// /// Combines and the string representation of the /// to set <select> element's "name" attribute. Sanitizes the string - /// representation of the to set element's "id" attribute. Converts the - /// to a to set element's "value" attribute. - /// - /// Determines <input> element's "checked" attribute based on the following precedence: - /// - /// - /// entry for the string representation of the - /// if entry exists and can be converted to a . - /// - /// - /// result if it is non-null and can be parsed as a . - /// - /// Existing "checked" entry in if any. - /// Otherwise, does not include a "checked" attribute. - /// - /// - /// In all but the and default cases, includes a "checked" attribute with - /// value "checked" if the values is equal to a converted for - /// ; does not include the attribute otherwise. - /// + /// representation of the to set element's "id" attribute. /// IHtmlContent RadioButtonFor( Expression> expression, @@ -347,7 +336,11 @@ namespace Microsoft.AspNetCore.Mvc.Rendering new IHtmlContent Raw(string value); /// - /// Returns a <textarea> element for the specified . + /// Returns a <textarea> element for the specified . Adds content to the + /// element body based on the first non-null value found in: + /// the entry with full name, or + /// the evaluated against . + /// See for more information about a "full name". /// /// An expression to be evaluated against the current model. /// Number of rows in the textarea. @@ -359,22 +352,9 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// The type of the result. /// A new containing the <textarea> element. /// - /// /// Combines and the string representation of the /// to set <textarea> element's "name" attribute. Sanitizes the string /// representation of the to set element's "id" attribute. - /// - /// Determines <textarea> element's content based on the following precedence: - /// - /// - /// entry for the string representation of the - /// if entry exists and can be converted to a . - /// - /// - /// result if it is non-null and can be parsed as a . - /// - /// Otherwise, string.Empty. - /// /// IHtmlContent TextAreaFor( Expression> expression, @@ -383,11 +363,17 @@ namespace Microsoft.AspNetCore.Mvc.Rendering object htmlAttributes); /// - /// Returns an <input> element of type "text" for the specified . + /// Returns an <input> element of type "text" for the specified . Adds a + /// "value" attribute to the element containing the first non-null value found in: + /// the entry with full name, + /// the evaluated against , or + /// the dictionary entry with key "value". + /// See for more information about a "full name". /// /// An expression to be evaluated against the current model. /// - /// The composite format (see http://msdn.microsoft.com/en-us/library/txafckwd.aspx). + /// The format string (see https://msdn.microsoft.com/en-us/library/txafckwd.aspx) used to format the + /// value when using that in the "value" attribute. /// /// /// An that contains the HTML attributes for the element. Alternatively, an @@ -396,25 +382,9 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// The type of the result. /// A new containing the <input> element. /// - /// /// Combines and the string representation of the /// to set <input> element's "name" attribute. Sanitizes the string /// representation of the to set element's "id" attribute. - /// - /// Determines <input> element's "value" attribute based on the following precedence: - /// - /// - /// entry for the string representation of the - /// if entry exists and can be converted to a . - /// - /// - /// result if it is non-null and can be parsed as a . - /// Formats result using or converts result to a directly if - /// is null or empty. - /// - /// Existing "value" entry in if any. - /// Otherwise, string.Empty. - /// /// IHtmlContent TextBoxFor( Expression> expression, @@ -451,11 +421,16 @@ namespace Microsoft.AspNetCore.Mvc.Rendering string tag); /// - /// Returns the formatted value for the specified . + /// Returns the formatted value for the specified . Specifically, returns the + /// first non-null value found in: + /// the entry with full name, or + /// the evaluated against . + /// See for more information about a "full name". /// /// An expression to be evaluated against the current model. /// - /// The composite format (see http://msdn.microsoft.com/en-us/library/txafckwd.aspx). + /// The format string (see https://msdn.microsoft.com/en-us/library/txafckwd.aspx) used to format the + /// value when returning that value. /// /// The type of the result. /// A containing the formatted value. diff --git a/src/Microsoft.AspNetCore.Mvc.ViewFeatures/Rendering/TagBuilder.cs b/src/Microsoft.AspNetCore.Mvc.ViewFeatures/Rendering/TagBuilder.cs index e25a305835..d97c6785e2 100644 --- a/src/Microsoft.AspNetCore.Mvc.ViewFeatures/Rendering/TagBuilder.cs +++ b/src/Microsoft.AspNetCore.Mvc.ViewFeatures/Rendering/TagBuilder.cs @@ -120,7 +120,7 @@ namespace Microsoft.AspNetCore.Mvc.Rendering /// Valid HTML 4.01 "id" attribute value for an element with the given . /// /// - /// Valid "id" attributes are defined in http://www.w3.org/TR/html401/types.html#type-id + /// Valid "id" attributes are defined in https://www.w3.org/TR/html401/types.html#type-id. /// public static string CreateSanitizedId(string name, string invalidCharReplacement) { diff --git a/src/Microsoft.AspNetCore.Mvc.ViewFeatures/ViewFeatures/ViewDataDictionary.cs b/src/Microsoft.AspNetCore.Mvc.ViewFeatures/ViewFeatures/ViewDataDictionary.cs index 6a29fb94bb..41e6951807 100644 --- a/src/Microsoft.AspNetCore.Mvc.ViewFeatures/ViewFeatures/ViewDataDictionary.cs +++ b/src/Microsoft.AspNetCore.Mvc.ViewFeatures/ViewFeatures/ViewDataDictionary.cs @@ -379,7 +379,7 @@ namespace Microsoft.AspNetCore.Mvc.ViewFeatures /// /// Expression name, relative to the current model. /// - /// The composite format (see http://msdn.microsoft.com/en-us/library/txafckwd.aspx). + /// The format string (see https://msdn.microsoft.com/en-us/library/txafckwd.aspx). /// /// /// Value of named in this , formatted using @@ -400,7 +400,7 @@ namespace Microsoft.AspNetCore.Mvc.ViewFeatures /// /// The value to format. /// - /// The composite format (see http://msdn.microsoft.com/en-us/library/txafckwd.aspx). + /// The format string (see https://msdn.microsoft.com/en-us/library/txafckwd.aspx). /// /// The formatted . public static string FormatValue(object value, string format) diff --git a/src/Microsoft.AspNetCore.Mvc.WebApiCompatShim/ContentNegotiator/MediaTypeConstants.cs b/src/Microsoft.AspNetCore.Mvc.WebApiCompatShim/ContentNegotiator/MediaTypeConstants.cs index 3377eaba24..de8c5e8896 100644 --- a/src/Microsoft.AspNetCore.Mvc.WebApiCompatShim/ContentNegotiator/MediaTypeConstants.cs +++ b/src/Microsoft.AspNetCore.Mvc.WebApiCompatShim/ContentNegotiator/MediaTypeConstants.cs @@ -101,7 +101,7 @@ namespace System.Net.Http.Formatting /// /// /// Not yet a standard. In particular this media type is not currently listed at - /// http://www.iana.org/assignments/media-types/application. + /// https://www.iana.org/assignments/media-types/application. /// public static MediaTypeHeaderValue ApplicationBsonMediaType { diff --git a/test/Microsoft.AspNetCore.Mvc.WebApiCompatShimTest/TestUtils/MediaTypeConstants.cs b/test/Microsoft.AspNetCore.Mvc.WebApiCompatShimTest/TestUtils/MediaTypeConstants.cs index 432222dd50..bb796c8a07 100644 --- a/test/Microsoft.AspNetCore.Mvc.WebApiCompatShimTest/TestUtils/MediaTypeConstants.cs +++ b/test/Microsoft.AspNetCore.Mvc.WebApiCompatShimTest/TestUtils/MediaTypeConstants.cs @@ -99,7 +99,7 @@ namespace System.Net.Http.Formatting /// /// /// Not yet a standard. In particular this media type is not currently listed at - /// http://www.iana.org/assignments/media-types/application. + /// https://www.iana.org/assignments/media-types/application. /// public static MediaTypeHeaderValue ApplicationBsonMediaType {