// функция с необязательными 3 параметрами
public void DeleteCar(string carModel, string color = "", double speed = 0, int yearOfIssue = 0)
{
// базовый фильтр на списке машин LINQ запрос
var query = from c in _cars
where c.CarModel.StartsWith(carModel)
select c;
// LINQ запрос добавление условия
if (color != string.Empty)
query = query.Where(cl => cl.Color == color);
// LINQ запрос добавление условия, с дельтой 0.2
if (speed > 0)
query = query.Where(sp => Math.Abs(sp.Speed - speed) < 0.2);
// LINQ запрос добавление условия
if (yearOfIssue > 0)
query = query.Where(y => y.YearOfIssue == yearOfIssue);
// выборка элементов и преобразование в список
var results = query.Select(f => f).ToList();
// удаление элементов из начального списка попавших под фильтр
foreach (var car in results) _cars.Remove(car);
}
dotnet publish -r win-x64 -c Release /p:PublishSingleFile=true
dotnet publish -r linux-x64 -c Release /p:PublishSingleFile=true
sudo cat > /etc/systemd/system/test.service
# test.service
[Unit]
Description=Test api service
[Service]
WorkingDirectory=/var/www/www-root/data/www/test.net/test
ExecStart=/var/www/www-root/data/www/test.net/testapi/testapi --urls=http://localhost:5010
Restart=always
# Restart service after 10 seconds if the dotnet service crashes:
RestartSec=10
KillSignal=SIGINT
SyslogIdentifier=testapi
User=www-root
Environment=ASPNETCORE_ENVIRONMENT=Production
Environment=DOTNET_PRINT_TELEMETRY_MESSAGE=false
[Install]
WantedBy=multi-user.target
Ставьте hyper-v