Этот метод позволяет указать начальный месяц квартала, а также предоставляет год (ы) для периода в целом.
public string GetQuarterPeriod(DateTime date, int quarterStartMonth)
{
var quarterDateOffset = date.AddMonths(1 - quarterStartMonth);
return $"Q{Math.Ceiling((decimal)quarterDateOffset.Month / 3)} {quarterDateOffset.Year}"
+ (quarterStartMonth == 1 ? "" : $"/{quarterDateOffset.Year + 1}");
}
Предоставление:
GetQuarterPeriod(new DateTime(2018, 4, 1), 4) -> "Q1 2018/2019"
GetQuarterPeriod(new DateTime(2018, 1, 1), 1) -> "Q1 2018"
Функция учитывает тот факт, что если месяц - январь (1), он ограничен одним годом.
Мне пришлось расширить расширения сводки валидации в другом моем проекте, чтобы иметь дело с более чем одной формой на странице.
Хотя это другое, вы можете создать свой собственный метод расширения ...
namespace System.Web.Mvc
{
public static class ViewExtensions
{
public static string MyValidationSummary(this HtmlHelper html, string validationMessage)
{
if (!html.ViewData.ModelState.IsValid)
{
return "<div class=\"validation-summary\">" + html.ValidationSummary(validationMessage) + "</div>"
}
return "";
}
}
}
Тогда просто позвоните в
<%= Html.MyValidationSummary(
"Login was unsuccessful. Please correct the errors and try again.") %>
HTHs, Чарльз
Вы можете сделать следующее:
<%if (!ViewData.ModelState.IsValid) { %>
<div class="validation-summary">
<%= Html.ValidationSummary(
"Login was unsuccessful. Please correct the errors and try again.") %>
</div>
<% } %>