преобразовать фунцкию в объект
проект Blazor Assembly для таблицы использую Syncfusion
я пытаюсь метод, который возвращает строку преобразовать в объект, мой ожидаемый вывод это строка (при некоторых условиях меняет цвет) + времяСтрока + строка
===> Опаздывает на(строка) 2(вычисления из БД) дня(еще строка, меняется от день,дня час...) Я попыталась, начала и зашла сюда попросить помощи
private string GetRaznicuVoVremeni(DateTime predpologaemayaData, DateTime predpologaemoeVrema) //в базе данных время и дата разделенны
{
string raznicaVremeni = "";
DateTime obshayaDataVremya = predpologaemayaData;
obshayaDataVremya = obshayaDataVremya.AddHours(predpologaemoeVrema.Hour);
obshayaDataVremya = obshayaDataVremya.AddMinutes(predpologaemoeVrema.Minute); //соединила данные из БД, чтоб получить общий объект время
TimeSpan ts = obshayaDataVremya - DateTime.Now; //расчитываю разницу
string HH = ts.Hours.ToString();
string MM = ts.Minutes.ToString().Replace("-", "");
string den = " day";
if ((int)ts.TotalMinutes < 0) // opazdivaet
{
raznicaVremeni = "Опаздывает на : ";
switch (ts.Days)
{
case 0:
return raznicaVremeni + HH.PadLeft(2, '0').Replace("-", "") + "H" + MM.PadLeft(2, '0');
default:
if (ts.Days < -1) { den = " days"; }
return raznicaVremeni + ts.Days.ToString().Replace("-", "") + den;
}
}
else
{
raznicaVremeni = "Прибудет через : ";
switch (ts.Days)
{
case 0:
return raznicaVremeni + HH.PadLeft(2, '0') + "H" + MM.PadLeft(2, '0');
default:
if (ts.Days > 1) { den = " dayss"; }
return raznicaVremeni + ts.Days.ToString() + den;
}
}
}
эту функцию я добавляю в мой классМодель объект и потом добавляю еще одно свойство строку, которому присваиваю эту функцию
public string RaznicaVremeni{ get => @GetRaznicuVoVremeni(Date, Hours); }
и в моей таблице выходит строка, и все расчеты правильные, только вот стал вопрос покрасить "опаздывает" в красный цвет и уменьшить размер шрифта
вот вопрос про то, куак можно ли присвоить стиль, использовать теги html Спасибо @EvgeniyZ
вот как я пытаюсь решить вопрос
public class Class
{
public Class(string statusStroka, DateTime dateDB, DateTime hoursDB) //тут я думаю дать данные час и дата, чтоб потом в основной модели присвоить данные из базы ?
{
statusStroka = StatusStroka;
dateDB = DateDb;
hoursDB = HoursDb;
}
public string StatusStroka { get; set; }
private DateTime obshayaDataObj { get; set; }
public DateTime ObshayaDataObj
{
get => obshayaDataObj;
set
{
DateDb.ToShortDateString();
obshayaDataObj.AddHours(HoursDb.Hour);
obshayaDataObj.AddMinutes(HoursDb.Minute);
}
}
public DateTime DateDb { get; set; }
public DateTime HoursDb { get; set; }
private TimeSpan ts { get; set; }
public TimeSpan TS
{
get => ts; set
{
_ = ObshayaDataObj - DateTime.Now;
}
}
}
public string stringTimeDisplay { get; set; }
public object TimeDiffTest { get => stringTimeDisplay + @GetRaznicuVoVremeni(Date, Hours); }
// и тут идет повтор кода, словно по кругу иду
а потом дальше в разор вообще как искать этот TimeSpan разницу..., чтоб покрасить строку, тот самый if else, что обхватывает свитчи