Форматируйте текст в формате c#, asp.net сердечник

#c# #asp.net-mvc #asp.net-core

Вопрос:

Я хотел бы отформатировать свой текст в верхнем или нижнем регистре в контроллере перед просмотром на странице Razor. но это не работает. что я здесь делаю не так. Я не вижу никакого эффекта в поле зрения.

 public IActionResult Index()
{
    DataTable dataTable = new DataTable();
    using (SqlConnection sqlConnection = new SqlConnection(_configuration.GetConnectionString("abc")))
    {
        sqlConnection.Open();
        SqlDataAdapter sqlDa = new SqlDataAdapter("proc_Productlist", sqlConnection);
        sqlDa.SelectCommand.CommandType = CommandType.StoredProcedure;
        sqlDa.Fill(dataTable);

        TextInfo textInfo = new CultureInfo("en-US", false).TextInfo;

        foreach (DataRow row in dataTable.Rows)
        {
            textInfo.ToTitleCase(row["Name"].ToString().ToLower());
            textInfo.ToLower(row["Made"].ToString().ToLower());
        }
    }
    return View(dataTable);
}
 

Ответ №1:

Вы не переназначили результат метода ToTitleCase или ToLower в строку[«Имя»]. Если вы прочитали документацию о ToTitleCase, в ней говорится: Возвращает указанную строку, преобразованную в регистр заголовка. Вам нужно написать:

 row["Name"] = textInfo.ToTitleCase(row["Name"].ToString().ToLower());
row["Made"] = textInfo.ToLower(row["Made"].ToString().ToLower());
 

Хорошего дня.

Источник: https://docs.microsoft.com/fr-fr/dotnet/api/system.globalization.textinfo.totitlecase?view=net-5.0

Комментарии:

1. Имеет смысл, спасибо за решение, я совсем забыл его переназначить. хорошего дня